For image dragging & resizing, you can use the .draggable() & .resizable() functions in jQuery UI.
This is fully customized and you will be able to reach your goal easily.
For image merging, you can use the code from this subject:
<?php
$dest = imagecreatefrompng('vinyl.png');
$src = imagecreatefromjpeg('cover2.jpg');
imagealphablending($dest, false);
imagesavealpha($dest, true);
imagecopymerge($dest, $src, 10, 9, 0, 0, 181, 180, 100); //have to play with these numbers for it to work for you, etc.
header('Content-Type: image/png');
imagepng($dest);
imagedestroy($dest);
imagedestroy($src);
?>
And if you use PHP, also have a look to ImageMagick