Convert via UTC

Subtract the source offset to reach UTC, then add the destination offset.

Start with source time

Use a 24-hour clock for easier arithmetic.

Move to UTC

Source local time minus source offset gives UTC.

Move to destination

UTC plus destination offset gives destination local time.