Let me touch upon this subject from my personal experience as an iPhone developer. From what I've seen, things are neither all "brimstone and fire" nor are they all "puppies and flower gardens". One of my company's apps, [app]CraigsHarvest[/app], took over 3 months from when we first submitted it until it was finally approved. During that time, yes, we did receive some less-than-specific rejection letters that left us scratching our heads. But other times we received rejections that were more-specific, although never as explicit as we, as developers, would've liked.
But, we also were contacted by phone by a few individuals who worked with the App Review team. Through continued communication with these individuals we were able to finally tweak CraigsHarvest enough that the review team approved it. These reps seemed to understand our frustrations but had no real power over the review team; they acted more as liasons.
As well, I was contacted personally by one of these reps for my personal app, [app]a.k.a.[/app]. Apple had an issue with the wording I wanted to use for the app name on the App Store and so I adjusted it. But, in talking with this individual, he told me that he was very happy that I had actually returned his call because many developers they had tried to contact didn't and yet still wondered why their apps were being rejected or stuck in review.
Hope that provides some balanced perspective.