Doncaster only had themselves to blame for missed chances as Crewe ended their seven-match unbeaten run with a 2-0 away victory.
Rovers were outplayed in the first half as the visitors passed the ball and retained possession impressively after on-loan Finnish striker Laurie Dalla Valle had grabbed a goal on his debut after just five minutes.
The 21-year-old Fulham forward outpaced the Rovers' defence to latch on to a superb through-ball from Chuks Aneke and fired home via the near post.
Rovers were fortunate not to concede again when an attempted clearance from Tommy Spurr was brilliantly clawed off the goalline by goalkeeper Gary Woods, who did well to tip away a dipping shot from Abdul Osman soon after.
The home side suffered a blow when influential skipper Rob Jones went off with a head injury in the 27th minute, but they played much better in an entertaining second half.
Iain Hume missed a great chance to equalise after dribbling through and Paul Keegan hit the crossbar when he should have scored in the 58th minute, but young striker Mathias Pogba wrapped up the points for the visitors with a superb header from Michael West's corner 18 minutes from time.