You need to add days, not seconds to the date December 31, 1899
DateTime dt = new DateTime(1899,12,31);
dt = dt.AddDays(data.X);
For some reason when I run this I'm off by 0.3 seconds. I'm assuming that is based off of the precision of the format the data is being stored in.