The Flames jumped into a share of fourth place with Chicago in the tight Western Conference race. Dallas earned a point despite early struggles and the Stars moved into sixth place by themselves -- one point in front of Phoenix.
Rene Bourque, Tom Kostopoulos and Anton Babchuk scored during the game's first 14 minutes to put the Flames in control.
Dallas then produced a goal from Jamie Benn in the first, Mike Ribeiro in the second and Tomas Vincour in the third. The goal for Vincour was his first in the NHL and came in his 14th game since being called up from the minors.
Calgary had a 1-0 lead in the shootout going into the third round but Ribeiro kept Dallas' hopes alive with a goal. Glencross, however, beat Kari Lehtonen to end it.
The Flames won their third in a row, getting 31 saves from Miikka Kiprusoff.
Lehtonen stopped 31 shots for the Stars, who have earned at least a point in their last seven games (5-0-2).
Gal Gadot cast as Wonder Woman for 'Batman vs. Superman'
Kate Middleton recycles dress at movie premiere