Lampard is never questionable for England, he just plays his role. Unlike Gerrard who hogs the ball and runs up the middle, no matter if he's asked to play defensively, offensively in the middle, as a left or right winger, he does what he wants to the detriment of the team.
Lampard for England almost always takes the defensive role, sits back, doesn't play to his strengths and is still very good, just not banging in goals and getting as many assists because he's got the sense, the discipline to play the role needed rather than the one with the most glory(Gerrard again).
People that question he performance when he's doing what needs to be done and sacrifices his own glory for the good of the team, need shooting.
Its also that kind of behaviour and discipline that make him a great candidate for being captain aswell, added to the fact that as far as I'm aware, he hasn't done much wrong off the field. Though I'll be honest I don't know a huge amount about it, he has kids from an ex-wife/girlfriend, but they broke up as opposed to him cheating on her, who knows.
Being a loud foul-mouthed git isn't actually whats required of a captain. Discipline, reading the game, consistancy in performances. The shouting has NOTHING to do with being a captain, its the quiet word from someone who can read the game, the reading of a weakness of an opponent, or a strength and letting others know.
But really for me its the fact that he doesn't run around in the box pulling everyone to the ground and he doesn't dive frequently which makes him the best option for captain. I'm embarassed that Terry is and I'd be embarassed if Gerrard represented England at a world cup as captain, while diving his way to trying to win.
Personally I'd also say Cole is the best defender at Chelsea, and for England, just not the best centre back.