Tricky. Here's the problem. The calendar is setup to accept multiple events on a given day. As such, the LiveCalendarWidget is not technically "event aware" in the sense that you could pull an associated event from a specific day. All it knows is that it has at least one event, and the click takes you to the calendar view for that day, which again, may contain one or 100 events.
Your model is asking the calendar to assume that there is only one event per day, as I understand it.
It would take some clever re-engineering. Not hacking, but subclassing and template overrides. Should be relatively easy if you're good with code.
Start by subclassing LiveCalendarWidget, and overload the getWeeks() method.
$weeks = parent::getWeeks();
foreach($weeks->Days as $d) {
$date = $this->start_date->format('Y') . "-" . $this->start_date->format('m') . "-" . $d->Number;
$d->Event = DataObject::get_one("CalendarDateTime", "StartDate = '$date'");
}
Then, override the template in your theme dir, and in the <% control Days %> function, you should be able to get to the associated event with $Event.
You'll need to run an update because none of the LiveCalendarWidget vars are subclassable right now, and I just changed that.