Doesn’t seem like there’s anything wrong with your approach. But you might find it easier to sub-class the PMITable or AdvancedVisionTable components to add your functionality.
Anyways, more detailed advice will require more of your code posted. It is hard to find what is missing if one doesn’t have everything to look at. /:
No, within a regular designer panel (not a Vision DesignableWorkspace or whatever the base class is called) you would have to set up standard Swing Drag & Drop handling, but use one of the static final constants on NodeListTransferable as the expected DataFlavor, eg: com.inductiveautomation.ignition.designer.tags.tree.dnd.NodeListTransferable#FLAVOR_NODE_INFO_LIST