You can customize the date however you want, see the php documentation:
http://www.php.net/manual/en/function.date.php
The time offset should be in the database-query, not in your output date.
As for showing Users their local time. I thought about changeing the widget that way, but then i think i can't use the cms-widget-cache anymore on this particular widget. I just can't imagine the widget beeing created for multiple timezones in the cache.

Second issue with local time is the utc-column in the event-db-table. You need to correct for that value as well, depending on which timezone the user chose upon adding the event.
---------------------------------
Thanks to the creator of the widget. Great work, great idea.