I'm unfamiliar with that course, but the way I'd do snapping is to make your puzzle with all the pieces in place in the editor. Then add two instance variables to the pieces: "startx" and "starty". They are the locations you'd want to snap to. You don't set them in the editor, instead do it with an event:
start of layout:
--- sprite: set startx to self.x
--- sprite: set starty to self.y
Then snapping can be done by comparing the distance between the sprite and startx/y when you drop it.
sprite: dragdrop: on drop
system compare distance(sprite.x, sprite.y, sprite.start.x, sprite.starty) < 16
--- sprite: set position to (self.startx, self.starty)