scale9Grid Error

Does anyone know why this error if no graphics present

eg:

var square:Shape = new Shape();
square.graphics.lineStyle(20, 0xFFCC00);
square.graphics.drawRect(0, 0, 100, 100);

var grid:Rectangle = new Rectangle(20, 20, 60, 60);
square.scale9Grid = grid ;

addChild(square);

**
eg with error
**

 var square:Shape = new Shape();
var grid:Rectangle = new Rectangle(20, 20, 60, 60);
square.scale9Grid = grid ;

addChild(square);

error

ArgumentError: Error #2004: One of the parameters is invalid.
at flash.display::DisplayObject/set scale9Grid()
at Untitled_fla::MainTimeline/frame1()

** Thanks
T
**