Add this removeAll statement to the DropZoneDraggingTool.doDragOver method override, after the call to Node.findTreeParts:
this._subtree = link.toNode.findTreeParts();
this._subtree.removeAll(this.diagram.selection);
// shift subtree rightward ...
I have also updated the original code in that other topic: Dynamic Layer Spacing for Tree Layout