Okay, this is one place where the lovely "intuitiveness" of the iPhone falls right on its nose: time zone support.
I've had the pleasure of travelling from my normal haunts in the Central time zone to the Pacific time zone, but the displeasure of having all my appointments continue to show the appointment in Central time. For instance, an 8am meeting in Pacific time would still show up on the phone as being scheduled for 10am, which is the equivalent Central time (Pacific is UTC-8, Central is UTC-6).
The root cause of the problem is a setting I made in the "Mail, Contacts, Calendars" Settings page, not the "General" page--which is where the other time-related settings are done.
At the very bottom of the settings page (iOS 4), there's a section for adjusting calendar sync; it has a Time Zone Support submenu.
Setting Time Zone support on results in the phone "locking in" on the selected time zone--in my case, I set "Chicago" ages ago, when I first got my iPhone--and ignoring the "embedded" time in the calendars. There's an explanation on the submenu: Time Zone Support always shows event dates and times in the time zone selected for calendars. When off, events will display according to the time zone of your current location.
I'm not the only one with the misunderstanding. Google the phrase "iphone time zone problem," and you'll find a bunch of folks with similar problems: appointments set in one time zone will result in them "sticking" to the old time zone instead of moving to the new time zone with you.
Here's where the setting becomes counter-intuitive: If the device supports time zones, it implies that it "recognizes" that there are different time zones: an appointment set for 8am PDT should show up as 8am when the phone is in the Pacific Time Zone, while showing 10am when in the Central Time Zone. The opposite should also be true: disabling Time Zone support should result in the phone ignoring all time zone metadata and displaying all times as input, regardless of the physical location of the phone.
I don't have a problem with the iPhone operating this way; my objection is the way the settings are presented to the user. My recommendation is that the equivalent settings be duplicated on the General Settings page (Date/Time), and that the setting itself be called "Time Zone Override".