     {
         // NOTE: This code will not work correctly when we share
         // display objects across multiple graphic elements.
-        var bitmapData:BitmapData = new BitmapData(getLayoutWidth(), getLayoutHeight(), transparent, fillColor);
+        var bitmapData:BitmapData = new BitmapData(getLayoutBoundsWidth(), getLayoutBoundsHeight(), transparent, fillColor);
 
         if (displayObject && nextSiblingNeedsDisplayObject)
         {
             var m:Matrix = displayObject.transform.matrix;
         
             if (m)
-                m.translate(-getLayoutPositionX(), -getLayoutPositionY());
+                m.translate(-getLayoutBoundsX(), -getLayoutBoundsY());
             bitmapData.draw(displayObject, m);
         }
         else

    /**
     *  @inheritDoc
     */
    public function getPreferredWidth(postTransform:Boolean=true):Number
    {
        return transformWidthForLayout(preferredWidthPreTransform(),
                                       preferredHeightPreTransform(),

    /**
     *  @inheritDoc 
     */
    public function getLayoutBoundsHeight(postTransform:Boolean = true):Number
    {
        return transformHeightForLayout(_width, _height, postTransform);
    }
