New York had forced extra time when Frans Nielsen found the net on a rebound with 1:12 left in the third period.
But the Canucks emerged with the victory when MacDonald's attempt to block Richardson's shot 2:16 into overtime got under the pads of goaltender Evgeni Nabokov.
Roberto Luongo earned the win with 28 saves.
Matt Moulson scored twice and Brock Nelson got his first career NHL goal for New York, which completed a four-game homestand with a 1-1-2 mark.
Celebrity Breakups and divorces of 2014 [PHOTOS]