I managed a semi-simple workaround: I created an invisible shape proxy of my transformed object which serves as the TransformItem, and replicate its transform values to the real object whose center has been shifted...
private function init():void{
// _tm is my transformManager
_tm.addEventListener(TransformEvent.MOVE, transformUpdateHandler, false, 0, true);
_tm.addEventListener(TransformEvent.SCALE, transformUpdateHandler, false, 0, true);
_tm.addEventListener(TransformEvent.ROTATE, transformUpdateHandler, false, 0, true);
}
private function transformUpdateHandler(e:TransformEvent):void {
TweenMax.to(_realObject, 0, {scaleX:tranformItem.scaleX, scaleY:tranformItem.scaleY, rotation:tranformItem.rotation, x:tranformItem.center.x, y:tranformItem.center.y});
}