Так я разобрался оказывается неправильно матрицу записывал. Надо было так, вот правильная матрица

Код AS3:
var matrix:Matrix=new Matrix(1,0,0,1,-x0,-y0);
Тогда все работает как надо.
П.С.

Код AS3:
m = new Matrix()
m.tx = W;
m.ty = H;
Это тоже не работает, вообще не понимаю зачем сдвиг приравнивать к высоте и ширине
Добавлено через 1 минуту
Полный код

Код AS1/AS2:
var bit:BitmapData=new BitmapData(W,H);
bit.draw(this,new Matrix(1,0,0,1,-x0,-y0));
jpeg=JPEGEncoder.encode(bit,100);
bit.dispose();