Your question is contradictory. Initially, you mentioned about dragging a JPanel - then, you say you need something like that in UML tools.
I think what you want is to actually 'drop' something into a JPanel. So, in that case,
you should propably have a JLabel or a JToggleButton with an image on it. Then, you would drag this component and drop it into the JPanel.
The examples given in the tutorial use StringSelection which is to transfer
String data - so, in your case you should write a class that implements Transferable - this class should support DataFlavor.imageFlavor and the getTransferData method should return an Image object. Not an easy one to write though.
Finally, based on what to do on the 'drop' action - if you just want to add a JLabel to the panel, then as you have mentioned, it would become dependant on the layout used. If you use a null layout, then you can add the label at the drop location. If you want to draw the dragged image, then, you can use the repaint(x,y,w,h) method to signify where to draw and then draw the actual image in the paintComponent method.