New loan signing Paul Downing made his debut, while the visitors included former Sheffield United midfielder Jose Baxter.
Rovers midfielder Ben Whiteman had an early chance, a corner falling to the former Blades man, whose volley just went the wrong side of Dan Iverson's right-hand post.
The visiting goalkeeper saved well from Jame Coppinger, while Chris O'Grady was thwarted by Marko Marosi at the other end.
Rovers should have taken the lead on 22 minutes, John Marquis breaking the offside trap, round the goalkeeper, before seeing his goal-bound shot hacked off the line by Peter Clarke.
A crowd of 11,620 were packed into the Keepmoat - 3,796 from Oldham - but chances dried up for the remainder of the first half.
Kieran Sadlier's long-range strike looked destined for the top corner, but Iverson got his fingertips to the ball to push it wide at the start of the second half.
The game was opening up now, Herbie Kane denied by a late block, before play switched to the other end and Baxter headed wide at the near post.
Rovers stopper Marosi made a double to save to deny Johan Branger and Baxter, and the only surprise was neither side had opened the scoring.
The goal the game had been promising finally arrived on 68 minutes, Whiteman firing home from long-range after a tidy approach down the left flank.
Alfie May came close to a second goal for Doncaster, but his shot was deflected wide, while Iverson thwarted Kane after he powered into the box.
Rovers were saved by the post, when Chris Missilou fired across goal, before Callum Lang hit the rebound into the side-netting.
But it was 1-1, when Clarke was quickest to react after a free-kick dropped into his path.
Rovers piled forward in response, and after a goalmouth scramble - with the ball hitting the crossbar - the referee finally pointed to the penalty spot, after consulting his linesman.
And Whiteman kept his cool, to fire low beyond Iverson to make it 2-1, as the board went up to show six minutes of stoppage time.
Oldham finished the match with 10 men when Clarke was shown a second yellow card.