Ich empfehle dir, dich vom OnActivate-Event wenn irgendwie möglich zu trennen.
Mein Programm hat damals auch auf FormShow aufgebaut. Der notwendige Refactor, um all den Quark auszubessern, hat Monate gedauert.
Oh, ich wurde schon mit Code konfrontiert, bei dem die haarsträubendsten Dinge im FormPaint passierten - auch schon mal Aufrufe von FormActivate oder FormResize.