The Winnipeg defence came up big as rookie defensive back Brandon Alexander had an interception return for a touchdown, while defensive lineman Tristan Okpalaugo picked up a fumble and ran it back into the Calgary end zone. Okpalaugo also had three sacks.
Justin Medlock added three field goals for the Blue Bombers (12-6), who will host the division semifinal at home on Nov. 12 against either the Edmonton Eskimos or Saskatchewan Roughriders.
Rene Paredes kicked a field goal in the second quarter, while Medlock conceded a safety in the fourth quarter to account for all of Calgary’s scoring.
Although Calgary finished the season with three straight losses, the Stampeders (13-4-1) had already clinched top spot in the West Division and the right to host the divisional final on Nov. 19.
Andrew Buckley made his first career CFL start for Calgary and completed 13-of-18 passes for 120 yards before being replaced by Ricky Stanzi late in the third quarter. Buckley threw an interception and was sacked four times, while Stanzi also had two passes picked off and was sacked three times.
Dan LeFevour started for Winnipeg in place in place of injured starter Matt Nichols (leg) and went 13 for 17 for 91 yards before being relieved by Dominique Davis in the fourth quarter.
In cold and snowy conditions, Winnipeg running back Andrew Harris finished with 68 yards on eight carriers to give him a league-leading 1,035 yards this season. He moved past idle Ottawa Redblacks running back William Powell (1,026 yards) and can only be caught by Jeremiah Johnson (886 yards) of the B.C. Lions, who host the Toronto Argonauts on Saturday.
Harris also had five catches for 28 yards. His 105 catches on the season set a record for receptions by a running back. He broke the old record of 102 receptions by Craig Ellis of the Saskatchewan Roughriders in 1985.
Calgary running back Jerome Messam had a chance to win his second straight rushing title, but he only finished with 30 yards on 12 carries to give him 1,016 yards for the season.
After Messam was stopped for no gain on Calgary’s first possession, Buckley ran for nine yards, but came up just short of the first down.
The Stampeders’ next possession was worse as Messam ran for just two yards before Buckley was picked off by Alexander, who ran the ball back 55 yards into the Calgary end zone for his first CFL touchdown.
Despite getting good field position on their next two drives, the Stamps weren’t able to put up any points.
The Bombers also struggled offensively in the first half until Medlock kicked a 52-yard field goal at 4:51 of the second quarter. With the wind at his back, Medlock booted a line drive that hit the post and bounced through the uprights.
Medlock hit two more field goals from 22 and 28 yards before Okpalaugo recovered a fumble and ran 51 yards for a touchdown to put Winnipeg up 23-0. Ian Wild sacked Buckley to force the fumble.
Paredes finally got the Stamps on the scoreboard at 8:17 of the third quarter when he kicked a 27-yard field goal. Medlock then conceded a safety with 4:26 remaining in the game to give Calgary two more points.