Executed as expected - SpeedButton is located over the entire height of the Panel, taking into account, of course, Panel.BorderWidth.
I'm not sure if i got what you said. Think about TSpeedbutton.Parent = TPanel.
In this case, Tpanel.ClientHeight = 30 and, by some reason, you set in object inspector TSpeedButton.Height = 50 and align it to alRight (even alLeft) inside TPanel, should not TSpeedButton.Height be changed to 30 by new align?