Ich vermute das der Aufruf des Klassenkonstruktors erst nach dem abarbeiten der INITIALIZATION-Abschnitte der Units erfolgt.
Ja, so ist es. Das liegt daran, daß Demo.Classes im Implementation-Uses steht und deswegen die Demo.Classes vor Demo.Manager initialisiert wird.
Allerdings wird Demo.Classes aber auch in Demo.Manager nicht verwendet und kann somit entfallen. Dann funktioniert es auch.