TreeNode objects can currently either be a folder or a leaf. Unfortunately this isn't quite right. If one tags a node as a leaf the library believes that it's unable to have children (it's neutered!) Tagging it as a folder always applies an expand elbow graphic to it, which has no effect if it's the end of the tree.
Why would you want to have a folder be at the end of the tree? There's no reason for them not to be. Folders are containers. As such, there's no reason they shouldn't be able to be at the end of the tree. But they are not leaves. While it doesn't actually break drag and drop, the visual presentation is such that it just looks wrong because they have expanders that don't do anything.
Somehow this needs to get worked out. I propose somehow exposing hasChildren to the underlying expansion mechanism to determine whether or not a node marked as a folder actually has children, and only then show the expander + item.