The Canadiens seized a 3-2 lead when David Desharnais scored with 3:11 remaining in the second period, but it was all Flyers after that.
Simmonds tipped in a shot to tie the score and Erik Gustafsson tallied the go-ahead goal with 3:36 to play. Jakub Voracek scored into an empty net with 39 seconds remaining to wrap up Philadelphia's third straight win.
Ilya Bryzgalov had to make just 17 saves to get the victory.
Montreal had a three-game winning streak snapped. Carey Price allowed four goals on 33 shots.
Selena Gomez drops F-bomb, walks off stage during Jingle Ball performance
Reindeer recovered after escaping from Santa during lighting ceremony