The pretty obvious difference is more games, maybe, but his sub appearances and generally being treated like the last resort at Spurs means he wasn't at his best, yet his strike rate was still essentially on par with his previous clubs, why, because Spurs generated more chances per game than say Ipswich.
Drogba/Rooney may have played less, but they've played at MUCH better teams and are given both better chances, and MORE chances.
Think about the City game, how many touches did Bent even have, his goal was, I'm actually not sure if it was his first touch, but it was amongst only a few touches. Rooney or Drogba 17 minutes into a game will have had loads of the ball and often several chances. Bent had the one chance all game and took it. Almost any striker no matter their quality, will simply score more goals at a great team providing him with more and better chances, than at a bad team.