Pittsburgh won its seventh in a row despite being shut out deep into the third period by Ben Scrivens.
Tyler Bozak put the Maple Leafs in front midway through the second period and Toronto was bidding for a 1-0 victory until Dupuis came through his 12th and 13th goals of the season.
He scored with 7:18 to play in the third and put the Penguins in front with 2:10 remaining. Craig Adams scored shorthanded with 10 seconds left to clinch it.
Marc-Andre Fleury stopped 27 shots in the victory. He has been in goal for four of the seven consecutive wins. Scrivens made 25 saves in what was Toronto's fourth straight loss.