I would suggest having a look at how I do reparenting in UIDragDropItem, line 154, 194, and 203.
ExampleDragDropItem extends this functionality, overriding the OnDragDropRelease function, and adds the ability to drop 3D items on a 3D object. Knowing what you're dragging (UICamera.currentTouch.dragged) and what you dropped it on (UICamera.hoveredObject), you can easily do the rest.