millis() blink != 50/50

OK
No progress in nailing that "state" deal.
I went back to the shop, as it were, for what I could hammer out on my own.

Using...

const byte led_pin = 13;    // using on-board "LED D13"
const long time_on = 100;
const long time_off = 900;
unsigned long change_pt = 0;

void setup()
{
  pinMode(led_pin, OUTPUT);
}

void loop()
{
  change_pt = (millis() + time_on);
  while (millis() < change_pt)
  {
    digitalWrite(led_pin, HIGH);
  }
  
  change_pt = (millis() + time_off);
  while (millis() < change_pt)
  {
    digitalWrite(led_pin, LOW);
  }  
}

...the blink stays in sync with the klacker on WWV.

It's likely not roll-over proof and if I've minimised the effect of any cumulative error, unlikely, that was purely by accident.