You've never had a crappy project manager? What fantasy-land IT company are you working for?
It really depends on the size of the project and team. Small projects typically don't require anything more than customer relations and schedule management. Large projects, however, require something much better. I'd say the PM makes or breaks large projects regardless of requirements or team resources. For small projects, each developer acts as their own mini-PM and mini-BA enough to allow minimally skilled PMs.
