If you are using Google Calendar through a Google Apps account the Private ICAL is not available by default.
To enable Private ICAL access to your Google Apps Calendar, have your Google Apps Administrator set the following setting in the Google Apps Console:
1.Sign in to the Google Admin console.
2.Click Google Apps > Calendar > Sharing settings.
3.If you have multiple organizational units, select the organization for which you want to set calendar sharing options.
4.In the External Sharing options for primary section, select how you want to allow users to share their primary calendar outside your domain:
Do not select the first one: Only free/busy information (hide event details).
Select any one of the other 3 items:
Share all information, but outsiders cannot change calendar;
Share all information, and outsiders can change calendars;
Share all information, and allow managing of calendar.