well, just a few thoughts while reading your posting:
16 weeks equal
10080000 seconds
40 years equal
1261440000 seconds
that makes a ratio of around 125. meaning that one second in "16 week time" repesents over 2 minutes in "real 40 years time".
or: roughly 29 seconds represent a full hour in real time.
get the real start date in seconds, get the amount of seconds since the game started, multiply the seconds with 125, add this value to the real start date seconds and build a full date:time out of this. you should get the date in real life. using unix timestamps and php's functions to convert should be very easy.
hope this helps. 🙂