I think most people either:
A) Don't understand that some apps will consistently eat at battery due to constant data checks
B) Just expect too much out of a device.
Just about every phone I've owned, since getting into tweaking them, I've seen people yelling about battery draining issues and tons of forum posts saying the same thing and tons saying no issue. From Winmo, to RIM to Droid and Apple.
I generally attribute it to applications, and device use. I know, for example, on my old Blackberry I would get HORRIBLE battery life and I even looked up my current build and checked to see if something was messed up w/ it, but then found a single mention of an obscure app I used, and once I removed it... viola. I was rockin 50% more life out of my phone.
Apple seems to be pretty thorough w/ testing things prior to release, and I'd expect most issues to come down Apps (settings, data use/refresh times, etc) and just people expecting too much out of a device (or doing the wrong math on how often its really being used). One of the main reason just about every application w/ a refresh time option gets dropped to "never" unless I manually do it because combine 10-15 applications checking back every 15mins at slightly different times and you've got horrible life.