Это потому, что VT не будет знать общую высоту дерева, пока все узлы не будут инициализированы (их высота станет известной). Таким образом, одним из вариантов будет принудительная инициализация всех узлов. Это, конечно, против «виртуальной парадигмы» VT, но если у вас только небольшое количество узлов, это не так уж плохо. Другой вариант - установить для DefaultNodeHeight максимальное значение NodeHeight, которое вы собираетесь использовать (если вы знаете это заранее), чтобы VT предполагал, что все неинициализированные узлы имеют эту высоту.