Milan vände matchen de sista tio minuterna.
Vilken vändning av Milan! Med tio minuter kvar av matchen kom kvitteringen. Några minuter senare - när bara nån ynka minut återstod - avgjorde brasilianaren Alexandre Pato.
Men det var Fiorentina som började bäst.
I 12.e minuten noterades Alberto Gilardino för 1-0 även om italienaren inte nödvändigtvis hade behövt röra bollen innan den rullade in i nätmaskorna.
Kanske ville han väldigt gärna göra ett mål mot sin gamla klubb?
Sedan dröjde det till 81.a minuten tills nästa mål kom. Och då var det Milans tur.
Klaas-Jan Huntelaar avslutade distinkt bakom Fiorentinas målvakt Sébastien Frey och nu var det kvitterat.
På stopptid avgjorde Milans superbrasse Pato.
Efter ett inlägg från Ronaldinho sköt 20-åringen ett halvvolleyskott som till slut slank in under Frey.
Milan tar i och med vinsten tre välbehövliga poäng i toppskiktet av Serie A och ligger nu bara fyra poäng efter Inter - som bara fick 0-0 hemma mot Sampdoria.
Fiorentina stannar kvar på 10.e plats.