Because timekeeping is an OS task, not part of any app . . .
Exactly!
If time synchronization was implemented in WSJTX and the user shutdown WSJTX they then loose any time synchronization. To maintain accurate time keeping would require that WSJTX is kept running even when not using WSJTX. Keeping a GUI window open is not the right approach, it should be left to a background service dedicated to time keeping.