Hallo TUX,
nachdem du das jetzt so sagst erinnere ich mich an etwas. Ich hatte mir mal die Funktion angeschaut wie der VST denn die Berechnung macht ab wann er den Text abschneiden soll. Und das kann er ja nur dann wissen, wenn er die Font Größe und die Breite des Textes auf dem entsprechenden Canvas kennt.
Dein Abwählen der Node hat intern ein Invalidate ausgelöst. Somit ist der Text auf dem Canvas neu gezeichnet worden und die Textbreite kann ermittelt werden. Der Tree weiß ja nicht, wie er auf deine internen Daten zugreifen soll.
Das manuelle Invalidate musst du aufrufen, da du, ohne das Wissen des Trees, die internen Daten veränderst. Würdest du das über einen Editor machen, dann wüsste er es und würde automatisch ein Invalidate veranlassen.
Also von daher ganz logisch!