I’ve written a calendar snippet that uses the manager for authentication (anyone that can log into the manager is considered a calendar admin, otherwise they are anonymous), and then displays the days. If you are an admin each day gets an "add" button. I use jQuery to pop up a modal dialog box you fill the details out, and then it Ajax POSTs it to save events. If you click an existing event then you can edit it.
Public users can click the event names to view (but obviously not edit) the event details in a jQuery popup. All the layout is doing using chunks & css so it should be pretty easy to template.
It’s pretty basic (but serves my needs). The main problem others may have is that the granularity only goes as far as days (i.e. you can’t specify the time of an event), and events only have a start and an end date. No support for repeating events etc.
I haven’t worked out how to package it for Modx yet, but I can post the source in a zip here and you’d have to install it manually (i.e. create snippets/chunks etc) if anyone is interested?
You can see the public view at
http://www.avon-mc.org.uk/calendar.html