Проблема, я думаю, в том, что вы читаете с консоли в конце функции. Когда код попадает в нижнюю часть дерева справа, он выполняет Console.Read()
и не будет продолжать печатать остальную часть дерева, пока не получит что-либо.
Устраните это, и оно должно напечатать все.