It really, really depends. If you've got a large team and a mature codebase, a rockstar programmer who's a douche is usually worse than useless.
But if you've got a small team and are making major architecting decisions, the competent, meticulous, anal-retentive jerk can be perfect. A good manager knows how to get the best work out of everyone, and managing different/difficult personalities is an important skill.