When i search the web for answers, most of them talked about syncing via the built-in CALDAV or the sync url but i am unable to get multiple calendars still. Only the primary calendar is sync.
Syncing via CalDAV is only available for Apple devices running software version 3.0 or above and since i am holding the iphone 4, its already built-on or you can login from http://m.google.com/sync.
By default only your primary calendar will be synced to your device. You can sync additional calendars by visiting the following page from any web browser (and this is the important link to get it right):
https://www.google.com/calendar/iphoneselect
For hosted domains using google services:(Google Apps users can go to https://www.google.com/calendar/hosted/your_domain/iphoneselect, replacing 'your_domain' with your actual domain name.)
Now it works.