The issue was that for some reason negative timestamps were returned as *strings* but positive as *integer*.
Negative *strings* didn't work on the constructor of Sabre_DAV_Property_GetLastModified() so I had to explicitly cast it here to int.