The Italians hit back after falling behind to an early opener from Yevgeni Konoplyanka, with Joaquin equalising before Cuadrado stretched the Italians' run of consecutive home wins in European competition to six games.
Both teams went into the game with qualification for the last 32 assured and the Ukrainians knew only a victory would be enough to see them leapfrog their hosts and top the group.
And despite a poor domestic run, Juande Ramos's side started well with Artem Fedetskiy missing a fine chance to put his side in front after eight minutes.
Five minutes later, Dnipro did take the lead when Konoplyanka cut in from the left and played a delightful one-two with Ruslan Rotan which ended in the striker curling the ball home just inside the far post.
Fiorentina, who went into the game on the back of a 2-1 Serie A defeat at Roma on Sunday, responded well with Cuadrado and Ryder Matos both bringing saves out of Dnipro keeper Denis Boyko.
And the home side drew level three minutes before half-time when the busy Cuadrado piled in a cross from the right and Joaquin blazed into the box to head past the helpless Boyko.
Konoplyanka came close with the first chance of the second half but Fiorentina began to get on top with both Cuadrado and Matias Fernandez bringing saves out of Boyko around the hour mark.
Fiorentina's pressure finally told in the 77th minute when Cuadrado fired a low winner past Boyko from 25 yards. Substitute Josip Ilicic missed the chance to extend the home side's lead late on.