Scott Pruett held off a late charge by David Donohue and held on to win Saturday's Grand Prix of Miami, Round 2 of the Grand-Am Rolex Sports Car Series.