The Slovenian provided the touch of class that Fiorentina had been lacking by sending a second-half drive beyond home goalkeeper Christian Abbiati at San Siro on Sunday.
Before that, there had been few signs that the visitors could find their way back into the game after Milan had taken a 25th-minute lead through Nigel de Jong's close-range header.
It was a game of few chances, with Jeremy Menez passing up a good opportunity earlier in the second half, while Juan Cuadrado and Matias Fernandez fired warning shots to Milan just before Ilicic's equaliser.
Stephan El Shaarawy could have put Milan back in front almost instantly but lashed wide when well placed.
Milan are now unbeaten in five Serie A games, but the result continues their recent poor form against Fiorentina at San Siro, where they have not tasted victory since 2010.
Filippo Inzaghi made three alterations from a 3-1 win at Verona last time out, drafting in De Jong after suspension, while Menez was preferred up front to Fernando Torres.
His opposite number Vincenzo Montella made wholesale changes from the UEFA Europa League win at PAOK on Thursday, with Cuadrado among those recalled.
Milan started the match in the ascendency, and Menez had a chance to test Neto after two minutes but his speculative effort was too high.
A scrappy opening was almost brought to life after 22 minutes as El Shaarawy's wonderful turn and shot forced a remarkable save from Neto, but the linesman's offside flag had already been raised.
It did not matter though, as Milan took the lead four minutes later when Cristian Zapata headed a corner into the danger area and De Jong was on hand to nod home his second of the season from six yards.
The visitors put in a disappointing first-half showing, and the closest they came to finding the net was through a Jasmin Kurtic long-range drive after 33 minutes that sailed wide.
Milan ought to have doubled the lead seven minutes into the second half as Menez broke forward, but the Frenchman turned onto his left foot and shot straight at Neto when he had team-mates available in better positions.
Montella's men finally showed signs of life before the hour, with Cuadrado taking a left-footed shot on the bounce from 30 yards, which forced Abbiati into a save to his right, and Fernandez blasted just over soon after.
But Fiorentina's persistence paid off as they equalised after 64 minutes through substitute Ilicic, who took aim from 25 yards out to fire a precise low drive into the bottom-right corner and beyond the despairing dive of Abbiati.
El Shaarawy had a chance to restore Milan's lead but lashed wide as the hosts fell to a result that sees them sitting sixth in Serie A.
Get the best features, fun and footballing frolics straight to your inbox every week.
Thank you for signing up to Four Four Two. You will receive a verification email shortly.
There was a problem. Please refresh the page and try again.