Well, you aren't wrong necessarily with your math, but that isn't how ticks work. The game is locked to 20 ticks per game second (afaik, it might have changed). However if your game lags so that it is 4x slower, then you as a user would only experience 5 ticks per real life second, but there would still be 20 ticks per game second, game seconds would just take 4x as long as a real second.
Locking the day night cycle to system time would be an interesting way to resolve that, although I would guess that it would make lag worse (potentially, and only by a little bit). Say the day/night cycle is the same, taking 20 minutes. How it currently works is every tick it advances the day and night cycle 1/24000, and once it reaches step 23999 it resets to 0. If it were to be tied to the clock, it would need to keep a record of when the world was loaded, then every tick (it would still be dictated by ticks because all in game logic is) it would need to check the in game time against the system time and adjust accordingly. So instead of a simple counting loop it would be repeatedly calling the system time, which is more work.
But my main issue with this is it would make the day and night cycle move erratically if you lag. If you are running at a consistent 1:1 ratio of in game seconds to real life seconds, it would be no different than the current system. But if you were moving at 25% speed because of lag the sky would lurch forward more noticeably each time it updates, and it would be worse if the lag was erratic or you just had a lag spike. If you had a 5 second lag spike the game would need to adjust the skybox for those 5 seconds, which would move it forward the equivalent or 100 ticks of the current system.
I would like to adjust the length of day and night cycles, but I don't want this as it would just make the cycle more erratic imo.
it already moves erratically at 5tps