Is there a reason this wouldn't work? I am using the scale as the main canvas can be scaled down.
var vx:Number = (tempNode.stage.mouseX / mainsprite.scaleX )- tempNode.x;
var vy:Number = (tempNode.stage.mouseY /
mainsprite.scaleX) - tempNode.y;
tempNode.x += vx;
tempNode.y += vy;

