Experienced striker Marlon King scored twice as Birmingham came from behind to beat lowly Doncaster.
The deadlock was broken by the visitors in the 50th minute when Billy Sharp set up Marc-Antoine Fortune, who took a touch and fired home low.
But 12 minutes later the Blues were level when King took advantage of a mix-up between Carl Ikeme and Herita Ilunga to score from 12 yards out.
And he won it with two minutes left with a coolly slotted finish.
Birmingham started the brighter but Doncaster had the game's first chance when James Coppinger fired straight at Boaz Myhill and Simon Gillett then dragged a shot wide after a mix-up in the Birmingham penalty area.
The hosts had a penalty appeal turned down by referee Nigel Miller, when they claimed Gillett handled David Murphy's volley.
Birmingham's Chris Wood and Doncaster's Sharp sent headers wide before Fortune looked destined to score his first Rovers goal only to be denied by Jonathan Spector's last-gasp tackle.
Wood then failed with another header and was denied by Ikeme to keep the score level at the break.
And it looked like they would pay for that when Fortune scored to round off a counter-attack for the visitors.
But the home side levelled when Chris Burke robbed Ilunga of possession after Ikeme's loose pass and found King. The Birmingham duo then combined again for the winner.
Birmingham manager Chris Hughton: "I thought we deserved the win. I know we were chasing the game at the end but I thought the performance throughout saw us trying to win and creating chances.
"When you go one behind against the run of play it is worrying but fortunately I have a group of lads who wanted a victory.
"Eventually we got the win that the performance deserved on the day although we did make hard work of it in the first half when we had three good goal chances.
"Marlon King did very well with his two goals. He is a very determined character. He is playing more games and it is beginning to show in his fitness level. When you have a fit Marlon he will produce goals."
Doncaster boss Dean Saunders: "We were unfortunate when we made a defensive mistake to allow them to get back into the game.
"But there were lots of positives and I am pleased how the team is looking. We are in good shape.
"We just couldn't hold on for the last 15 minutes when they tossed everything at us. I admit that I couldn't see them scoring but coming to Birmingham is always a difficult task.
"They have lots of Premiership quality players but their winner was a little bit too easy."