I had the same problem but found the answer after a day of (mostly frustrating) research...
As Microsoft insists on using the master Google account password in WP8.1 Cyan setup to do it their official way, there's actually two accounts we need to create on the phone instead of a 'Google Account' if we want to continue using Application-specific / device-specific passwords and bypass this nonsense. The first is for email, the second for contacts & calendar; I used the same device-specific password for both, no need for two separate passwords.
Email:
Within Settings -> email+accounts -> add an account -> advanced setup, enter your gmail address and device-specific password , click through to the next screen, then choose 'Internet email'.
I used the settings in the first attached image (see cyan-email-settings.png).
Gmail setup is then complete, on to contacts and calendar...
Contacts and Calendar:
Within Settings -> email+accounts -> add an account -> iCloud, enter a non-existent account name and a random character or two in the password field. We obviously expect this to fail against the iCloud servers - it's just a placeholder until we edit the advanced settings below.
After this fails with 'Not up to date', tap through on the iCloud account to the error and then hit close.
I then changed the settings as per the second attached image cyan-contacts-settings.png.
All being well you're now set up for Gmail and Google Contacts - your Google Calendar should now be selectable or visible through Settings within WP Calendar as usual.
Hat Tip to TSStefan for the post 'Cal/CardDav (Owncloud) in WP 8.1' which was invaluable for working out a starting place the above. I can't link to this nor provide text versions of the attached images due to my low post count. Hohum.
Goodness knows why Microsoft didn't make the CardDAV and CalDAV settings available through account 'advanced setup'. Hey, I'm sure we all like a challenge but maybe not so much when basic functionality disappears and requires hours of forum-trawling to regain!
Hope this helps someone before their phone hits the wall :wink: