Calendar

In GMail calendar: goto Settings -> Calendars -> Export Calendars to download a ZIP of your calendars in ICAL format.


In Google Apps calendar: goto Settings -> Calendars -> Import. It will then ask which calendar to import into. Entries will be added to that calendar.

Contacts

To preserve contact groups, each group needs to be migrated individually.

In GMail contacts: under More -> Export and save to Google’s CSV format. 

In Google Apps Contacts: under More -> Import.

Emails

To migrate emails we first setup either Outlook or Thunderbird to connect with both accounts. Then we drag and drop emails using Outlook or Thunderbird from one account to the other.

As an alternative, the Google App migration tool may work https://tools.google.com/dlpage/exchangemigration (but we haven't tested this method). A Googl apps business account is required for this tool to work.

Tasks

Use Google Task Porter...
https://google-tasks-porter.appspot.com/

More info of Google Task Porter here: http://google-opensource.blogspot.com.au/2011/08/introducing-google-tasks-porter.html

More info:

For info on manual Account Data Transfers see http://support.google.com/accounts/bin/answer.py?hl=en&answer=188007

For Migration from Gmail to Google Apps Mail, read http://base6.com/2009/06/15/migrating-from-gmail-to-google-apps/