>TreeItem.Dataに確保したメモリのポインタを入れて、OnDeletionで
>Disposeしてるんだけど、その確保したメモリはごっそりリークとして
>判断されてしまうらしいでつ。

ここでもたびたび話題になる例のやつではありませんか?
Dispose() するとき、ちゃんと New() したときのポインタ型にキャストしてますか?