You should be able to get the filename from the model without casting, no?

Regarding the difference in the default behavior and your workaround:
are you trying to initiate the draw in a mouse event handler instead of in startDrag()?

Cheers,
_