hi, here's how i've been doing my drag-drop with overlap checking:
https://dl.dropbox.com/u/52354372/drag_drop_overlap_test.capx
you could also do a simple check for the dragdrop behavior where you store the sprite's position on drag start, then on drop if it's overlapping another object you move back to that stored position.
but i would go with a movement tester sprite like in the example - most games with drag-drop do something similar, & it just feels more intuitive having the preview of where you're moving.
note - i've used a family in my example file for containing all blockable objects, so it might not open in the free version of C2.