Well everyone is entitled to their own opinion. Personally, I love him as Bond. I think Brosnan was the most Bond-y in terms of looks, voice and debonair-ness, but his movies sucked. Connery was probably the second most Bond-y and he had the best movies before the Craig films.

The way I look at it: they basically rebooted Bond with Casino Royale. He received his 00 title in that film and he's basically still a rookie. For that fact he's still a bit rough around the edges in character.