Preserve time zone when editing events
Per #173 (closed), "Any time you edit any event, Calendar will change it to local time, which is wrong for events scheduled in other timezones".
To be clear, Calendar changes the event DTSTART/DTEND to the current time zone (not "floating time"), whenever they are edited, even if the date is not touched.
Even worse, it does so by just changing the time zone component, not by actually converting to the currently equivalent time in the local time zone. So (for a current time zone of London), 3 p.m. New York time becomes 3 p.m. London time, which is wildly different, not just subtly broken as a conversion would be. And even conversion is wrong - see #173 (closed). Calendar should never change the time zone of an event.
I've tested/confirmed the behaviour from a current time zone of UK, with events created elsewhere with UTC, NY and floating time (actually the last one had to be manually edited since Evolution doesn't seem to support creation in floating time).
For edits that don't involve a change to the previous start/end times this should be easy - just preserve the existing DTSTART/DTEND instead of badly interpreting then rewriting them.
For edits that do involve changing the times, Calendar should at least warn prominently (with an explanation of consequences), or otherwise just refuse to change the times entirely with an explanation, until the lack of time zone support is fixed properly, since this is effectively a data corruption bug.