Donato skated in on a 3-on-1 rush and passed over to Connor Bedard, whose one-timer from the left circle was stopped by Lukas Dostal. However, Bedard got his own rebound behind the net and passed out front to Donato, who scored into an open net from the right post.
The goal came after Mason McTavish tied the game 1-1 with a power-play goal with 36 seconds remaining in the third period.
Frank Nazar scored, and Spencer Knight made 38 saves for the Blackhawks (3-2-2), who are 3-0-1 in their past four games.
Dostal made 28 saves for the Ducks (2-2-1), who were beginning a five-game road trip.
Nazar gave the Blackhawks a 1-0 lead at 9:43 of the third period. Wyatt Kaiser‘s one-timer off a pass from Nazar hit off the crossbar, but Nazar was able to tap the rebound in at the left post.
McTavish tied it 1-1 after Kaiser was assessed a delay of game penalty for shooting the puck over the glass at 18:13. The Ducks then pulled Dostal during the power play for a 6-on-4 advantage, and McTavish scored by roofing a shot short side from the bottom of the right circle.