Only do DateTime math when needed (makes code ~2x as fast)