I would like to add to this post that as a proof experiment, I had placed a DS3231 module in the home freezer for several hours (without the Li cell). On connection to a Nano, it read -9.0 deg C... (the freezer is set at -18C) and within 250 milliseconds it jumped to 4.5 deg C, so I would not trust it for low temperatures.
This was using the ds3231-master library.
BMP280 Temperature: 20.27
01/01/1900 00:01:05
Clock temp: -9.00
21.00 lux
Analog: 2145.00
BMP280 Temperature: 20.28
01/01/1900 00:01:05
Clock temp: 4.50
21.00 lux
Analog: 2140.00
BMP280 Temperature: 20.27
01/01/1900 00:01:06
Clock temp: 4.50
21.00 lux
Analog: 2155.00
BMP280 Temperature: 20.27
The reason I am interested in low temperature performance is for a solar photo-voltaic to lead-acid charge system, where the charge bank batteries are stored in a small shed in a field.