This is EXACTLY what I've been trying to say. It's not simply an iOS issue or simply an iPhone issue, it seems to have problems pushing across MULTIPLE devices. When I set up mail solely on my iPhone, it works flawlessly 99% of the time (that 1% error might even just be something unrelated). When I have an issue, it's usually because I've had mail pushed to another device, even my MacBook Pro. this doesn't ALWAYS happen, but the times i've had problems, that is the culprit. Somehow as if the mail ID's on the cloud server are not being synced.
Here is my theory (and forgive me if the technical description is not accurate, I am not an expert in push mail):
Example -
Device 1, iPhone sets up iCloud push. iCloud server setting would be something like address: xyz@me.com, device:iPhone(a), Mail Id:1
mail gets pushed fine to xyz@me.com on ID 1.
Set up Device #2
iPad - address: xyz@me.com, device iPad(a), Mail Id: 2
NOW, the server pushes everything to ID 2, and somehow expires ID1, so that device no longer gets pushed. Not sure if once it resets/reboots/restart mail on Device 1, it assigns a new Id (say Id 3) then disables Id 2, or if it then activates Id 1 and expires Id 2, but for some reason it wont sync correctly across multiple devices.
Almost EVERY TIME my push stops working, it is because I've had my mail pushed to another e-mail device, in my case it's even happened on my MacBook.
this is why Apple doesn't recognize the issue, I'm sure the vast majority have just one device... iPhone or iPad. I've been a loyal Apple user since the days of the Apple II's, it's frustrating that they aren't acknowledging this problem even if it is isolated to a specific group.