I don't have a solution for this, but I suspect that when you change time zones, there is nothing that will keep all of the appointments from changing.
I don't know this to be a fact with 6.1, but I suspect that like in other operating systems, the dates are stored in UTC time. When they are displayed on the screen, they are adjusted, on the fly, for the proper time zone. If this is true for 6.1, then it's all or nothing.
I'm on an Exchange Server, so I can enter appointments anywhere and they sync to the phone. When I travel, I DO NOT change the TZ on my laptop and enter the calendar appointments on it, not the phone. This may not work for you, but it's a thought.