So here’s the deal. I found that the problem lies with the port of the dallas temperature library that I was using (“spark-dallas-temperature”). The issue is with the -2032 value defined for DEVICE_DISCONNECTED_RAW constant in the header file which should read -7040.
This was reported by RobTillaart who opened this issue on GitHub. These changes have already been made to the original Miles Burton Arduino library. I’ve tested out the change on my own Photon and everything seems to be working now, reporting temperatures below the -15 mark. I’ve created a new Pull request to have the fix updated in the library that’s referenced in the Particle IDE.