Fix moment diff across dst in weird cases

moment diff across dst was sometimes failing because of a floating point
rounding. Just make sure to first do additions/subtractions and then division.

fixes #1842