I use fastmail but it seems that the iPhone 3G implementation of IMAP push is non-standard. In theory the iPhone also support IMAP IDLE, but it appears it doesn't work correctly and if the Mail application isn't in the forground, it only polls every 15 minutes. The new iPhone firmware supports push from Apples proprietary systems (eg the Yahoo collaboration, Mobile ME and their Activesync connection), but again I don't think the IMAP push works properly.