Kiprusoff earned his first shutout of the season - 27th overall - and his 150th NHL victory.
Colorado (5-4) had its five-game winning streak end. The Avalanche hadn't lost since dropping a 5-4 decision to the Flames in Calgary on Oct. 14.
The go-ahead goal was set up by hard work behind the Colorado net by Craig Conroy and David Moss. Moss ended up with the puck after a battle along the boards and whipped a backhanded pass to Glencross, who one-timed a shot past goalie Peter Budaj.
The Flames went right back on the attack and were rewarded with goals from Rene Bourque and Mike Cammalleri.
Bourque and Cammalleri had a goal and an assist apiece in the game.
Bourque's insurance goal came at 12:58. He faked going behind the net, then reached back and tucked the puck inside the near post. Cammalleri finished the scoring by one-timing Bourque's centering pass.
The teams combined for 24 shots in the first period but couldn't solve either goalie.
Colorado came closest to a goal before the third when Ian Laperriere's slap shot from the faceoff dot glanced off the webbing of Kiprusoff's glove before bouncing off the far goal post.
Joe Sakic had two good chances less than a minute later, but both his initial wrist shot from 20 feet out and his follow-up rebound from close-in were blocked by Kiprusoff.
Notes: Calgary D Adrian Aucoin entered the night last on the Flames at minus-6. ... Despite his six goals, Todd Bertuzzi is a minus-5. ... Flames D Dion Phaneuf leads the team at plus-2. ... Sakic's 40 goals and 103 points in 84 career games against Calgary are the most he's scored against any NHL team. ... Calgary C Matthew Lombardi (upper body) missed his second straight game.