I do this by allowing the user to specify the timezone that my product will be running in. For example if the user specifies PST (Pacific Standard Time) then I need to subtract 8 hours from UTC to derive the local time. This can prove to be slightly tricky as you have to handle the rollover of day/month/year boundries yourself (subtracting 8 hours from the UTC time might put you into the previous day, month, year) but nothing too awful.
~Tim