Hmm. If I remember correctly VS doesn't have design time support of Nested MasterPages which may be causing the issue with Intellisense not picking up the control reference (it still seems weird though). Regardless, if you call EventList.CalendarId = 5 in the page load of Default.aspx does your application build?
I would also set a break point on your property to see if it is even being hit.
BTW, in your post you said that changing Public to Private doesn't do anything when, in fact, it does quite a bit. If you were to set the property to Private you wouldn't be able to access it outside of your control. By using the keyword Public that exposes to all of the other classes within your application.
================================================== =========
Read this if you want to know how to get a correct reply for your question:
http://www.catb.org/~esr/faqs/smart-questions.html
================================================== =========
.: Wrox Technical Editor / Author :.
Wrox Books 24 x 7
================================================== =========