Osgood had been in net for each of Detroit's victories in a four-game winning streak. However, he made an early exit and starting a fifth straight game for the first time this season.
He was pulled after allowing three goals on 14 shots.
"By far that was my worst game in this building," said Osgood, who was pulled by coach Mike Babcock 6 minutes into the second period. "It wasn't that I didn't feel good, I love playing in Calgary, I always feel good here, but it just didn't happen for me tonight."
The only goal of the first period came at 10:57 when Dion Phaneuf scored his 11th goal on Calgary's second shot. Phaneuf's harmless-looking snap shot from just over the blue line beat Osgood on his glove side.
Lundmark wristed a shot from deep in the corner toward the net that glanced off Osgood's pad and trickled underneath him to make it 2-0 at 2:21. The crowd immediately serenaded Osgood with derisive chants of "Os-good, Os-good."
About three minutes later, Cammalleri skated behind the net and banked in a puck off Osgood's pad for his 36th. Osgood was then replaced with Ty Conklin. Having surrendered three goals on 14 shots, Osgood went straight to the dressing room and didn't return for the remainder of the game.
Osgood dismissed the bad outing, saying he had "zero" concern about it even though it came only three weeks before the playoffs.
"I don't think about it when I play great, you just move on and play the next game," Osgood said. "You guys make too big deal out of these games. If this happens the day before the playoffs, it doesn't matter. What matters is what happens in the first playoff game."
Babcock also shrugged it off as just one of those nights.
"If you didn't have such good history and if you didn't believe in him, you might think like that but that's not how I look at it at all," Babcock said. "He had a tough night, but in saying that he won us the Cup last year. He was great for us.
"We don't need him to be first star, we just need him to be regular and he's very capable of doing that."
The Flames opened up a five-point lead on the idle Vancouver Canucks atop the Northwest Division.
"Now it's crunch time. We want to just keep winning our games and let these games dwindle down and try to win the division," Conroy said. "Noboby's been hotter than Vancouver and we know that but we felt this was a must game, we didn't want to give them another opportunity like we did against St. Louis."
On a night that Osgood had no luck, Flames goaltender Miikka Kiprusoff appeared to have plenty of it.
Kiprusoff made 30 saves, including 14 in the third period.
"Something we were trying to do was get the puck on net a lot and try and cause some havoc in front of the net," Cammalleri said. "We got some bounces that went our way so it was nice."
Mikael Samuelsson had a breakaway in the second period, and after getting around a sprawled Kiprusoff, his shot hit the post, hit Kiprusoff in the leg, hit the post again, and slid along the line before being cleared by Cory Sarich.
In the third period, a point shot from Niklas Kronwall smashed off the end boards and ricocheted off the back of Kiprusoff's outstretched pad before being covered.
"You've got to have some bounces like that if you're going to win a hockey game," Sarich said. "We weren't great in the third. It was a learning experience against a great club. I think we tightened up a little bit. We're going to have to find a way to take some momentum away from them and get it on our side."
After Glencross' one-timer at 5:31 of the third put Calgary ahead 4-1, Franzen started the Red Wings rally with his 31st goal at 10:22. Hudler made it 4-3 with 6:57 left.
Conroy clinched Calgary's win with 28 seconds remaining.
The Red Wings outshot Calgary 33-27 overall, 16-9 in the third period.
Daymond Langkow's assist on Phaneuf's goal was his 600th NHL point. ... Calgary RW David Van der Gulik was in the lineup after being recalled earlier Monday from Quad Cities (AHL). It was the third time in less than a month he was summoned from the minors. ... Calgary RW David Moss was awarded the 2008-09 Ralph T. Scurfield Humanitarian Award, which goes to the Flames player who exemplifies determination and leadership along with dedication to community service. ... Detroit is one of five NHL teams without a hat trick this season.
Copyright by STATS LLC and The Associated Press
Arena: Scotiabank Saddledome Location: Calgary, Alberta
Referees: Dave Jackson, Stephane Auger Linesmen: Mike Cvik, Lyle Seitz
Attendance: 19,289 (100.0% full)
Team Stat Comparison
Power Play Goals
Power Play Opportunities
Shots on Goal
Dion Phaneuf (11)
Assists: Daymond Langkow, Mike Cammalleri
Jamie Lundmark (6)
Assists: Daymond Langkow, Mike Cammalleri
Mike Cammalleri (36)
(Power Play) Assists: Jamie Lundmark, Adrian Aucoin
Pavel Datsyuk (30)
Assists: Johan Franzen, Niklas Kronwall
Curtis Glencross (13)
Assists: Craig Conroy, David Moss
Johan Franzen (31)
Assists: Marian Hossa, Niklas Kronwall
Jiri Hudler (22)
Assist: Brian Rafalski
Craig Conroy (10)
(Empty Net) Assists: Curtis Glencross, David Moss