Разобралась в чём проблема, действительно было много лишнего кода. Выкладываю, может пригодится.
reader.onload = function(event) {
            var i = document.getElementById("source_image");
           	var j = document.getElementById("result_image");
            img = new Image();
            img.src = event.target.result;
            i.src = event.target.result;
            j.src = event.target.result;
            img.onload = function() {
                var canvas = document.createElement('canvas');
                var ctx = canvas.getContext('2d');
                canvas.width=765
                canvas.height=300
                ctx.drawImage(i, 0, 0, 765, 300);
                $("#holder").append(canvas);
                var dataURL = canvas.toDataURL();
                document.getElementById('source_image').src = dataURL;
                document.getElementById('result_image').src = dataURL;
           	 }
        };