Sorry James - I didn't realise this has created a new thread when I replied on my phone!
Although you're using UtcNow for your current date, your epoch date hasn't been adjusted for local time offsets.
Try new DateTime(1970, 1, 1, 0, 0, 0, 0).ToUniversalTime() instead - that will give you the correct timestamp.
Steven