Why ButtonWidget can't use transition.to()

:innocent:
Is this a BUG ?
The Button will scale until it disappear.

    local button1 = widget.newButton(
    {
        label = "button",
        emboss = false,
        -- Properties for a rounded rectangle button
        shape = "roundedRect",
        width = 50,
        height = 50,
        cornerRadius = 2,
        fillColor = { default={1,0,0,1}, over={1,0.1,0.7,0.4} },
        strokeColor = { default={1,0.4,0,1}, over={0.8,0.8,1,1} },
        strokeWidth = 4,
        x = display.contentCenterX,
        y = display.contentCenterY
    }
)
function A()
    transition.to( betSys.UI.button[1], {
        width = 50,height = 50, time= 1000,
        onComplete = A
    })    
end
transition.to( button1, {
    width = 45,height = 45, time= 1000,
    onComplete = A
})

With objects created by widget.newButton you need to use xScale and yScale instead of width and height.