Figure out which calendar the event exists on; look in the list of calendars on the left of the main display, click on the drop-down arrow to the right of the calendar name, click on "Calendar Settings".
You'll see the timezone for that calendar specified; if it's the main calendar for your account, it will be the timezone you've given Calendar for your account (and which will auto-suggest other timezones when you travel).
If you've changed timezones, any sub-calendars you've already created will stick with the timezone you had when you created that sub-calendar - every calendar or sub-calendar has independent settings.
The definition of all-day should manage to start at the start of the day in the timezone in which the calendar exists. There should be a red-line across "today" in one of the grid-views, showing what Calendar thinks the current time is for you.
If you're using VPNs to try to hide your source IP, you might have ended up with a calendar that's, say, in the UK but appears "right" to you, until you try to share events.