Goals from Kieran Agard, Daniel Nardiello and Robert Milsom secured a win for Steve Evans' side after they had fallen behind to Jose Baxter's first-half strike.
Baxter had given David Weir's side the perfect start with a goal in the 37th minute but they folded after the break and slumped to their fourth league defeat of the season.
Bradford City, promoted from League Two with Rotherham last term, were also big winners as they secured a 4-0 win over Brentford at Valley Parade.
The game was evenly poised at 0-0 until Brentford's afternoon was made much harder with the dismissal of goalkeeper David Button in the 25th minute.
With 10-men, Uwe Rosler's side struggled to cope with League One's second top scorers.
James Hanson struck twice with powerful headers either side of goals from Nahki Wells - his sixth of the season - and Garry Thompson.
Peterborough United failed to take advantage of Leyton Orient and Wolves not playing after being held to a 2-2 draw by Crewe Alexdandra.
It took a late Micheal Bostwick strike to earn Darren Ferguson's side a point as they completed a comeback from 2-0 down.
Vadaine Oliver and Ajay Leitch-Smith had put the home side in a commanding position, however, the mounting pressure from Peterborough eventually paid off as Tyrone Barnett and then Bostwick earned them a point as they stayed third in the table.
Crawley Town came from a goal down to beat Gillingham 3-2 in a fiery encounter at the Broadfield Stadium.
Both sides had a player sent off by referee Steve Rushton, and it looked like they were going to share a point until Billy Clarke's 81st-minute winner - his second of the game.
Danny Kedwell had put the home side ahead from the spot early in the second-half
Crawley's Gary Alexander was the first to go as he received his second yellow card in the 51st minute, and three minutes later Charlie Lee was following him down the tunnel for his second booking.
Kyle McFadzean levelled for the hosts before Clarke got his first goal just after the hour.
Leon Legge equalised for Martin Allen's side three minutes later, but they were denied a point by Clarke's late strike.
Carlisle United's winless start to the campaign continued as they were beaten 1-0 at home by Port Vale.
Tom Pope's 93rd-minute winner secured Vale's second league win of the season.
In the day's early kick-off, Swindon Town were denied a victory at MK Dons after Patrick Bamford's strike cancelled out Alex Pritchard's opener in their 1-1 draw.
The hosts felt aggrieved that they did not take all three points when George Baldock's late strike was ruled out for offside - despite replays showing that he was onside.
The only game of the day not to see a goal came at Prenton Park as Tranmere Rovers were held by Stevenage.
Get the best features, fun and footballing frolics straight to your inbox every week.
Thank you for signing up to Four Four Two. You will receive a verification email shortly.
There was a problem. Please refresh the page and try again.