Cates scored the winner on a shot from the hash marks after taking a pass from Tyson Foerster as they crossed through the offensive zone.
Owen Tippett scored the tying goal early in the third period for the Flyers (2-2-1). Dan Vladar made 15 saves.
Vladimir Tarasenko scored for the Wild (2-3-1), who have lost three in a row. Jesper Wallstedt made 19 saves.
Tarasenko gave Minnesota a 1-0 lead at 1:55 of the second period. The forward made a play to hold a bouncing puck in at the blue line and then dump it into the slot. Marco Rossi corralled the loose puck, and as he was skating backwards toward the corner on the left side, passed it back to Tarasenko who found open ice in the circle and beat Vladar with a one-timer.
The goal was upheld after the Flyers challenged for offside.
Tippett tied it 1-1 at 7:10 of the third. The forward missed the net with a shot, but Wallstedt couldn’t control the rebound off the end boards. Tippett tipped it away from him and from behind net banked a shot off Wallstedt’s skate and in.