Marvin needs to communicate with Apple's servers in order to sync your calendar. Since Apple has so many users, it spreads its users across many servers. In most cases we are able to figure out which server your calendar lives on with a request to a generic https://calendars.icloud.com, but for some users this doesn't work! It will appear as if you are entering the wrong email/app-specific password every time.
So if you try to link your Apple Calendar and Marvin fails to load your calendar, first double check to make sure the correct email (i.e. your Apple ID) is entered in the top field. But assuming that looks OK, you'll have to figure out which server your calendar lives on.
How to enter Calendar URL
After a failed login attempt, Marvin will assume that your email/app-specific password were correct and give you the opportunity to enter your calendar URL:
How to find Calendar URL
First open Calendar on your mac (or icloud.com) and select your calendar in the left sidebar. You will see an icon that looks like a signal being transmitted:
Click it to open a small popup:
Temporarily check the box to make this calendar public, then you can copy the URL and paste it into Marvin.
Now that you have the URL, feel free to uncheck the box that makes the calendar public, as this is not required for use in Marvin.
Will temporarily making my calendar public publish it to the world?
No. So long as you don't share this URL, making your calendar public has no effect.
Why is this happening to me?
It's a mystery! The default Marvin behavior works for most users but not for others. But after you