The root fills the whole panel, so a border sent it through the per-pixel roundRect path on every draw. The panel background is not a card; cards that want a border set one explicitly.
A custom node that paints its own key highlight does not want the whole node marked dirty on every press.
Square-card grids reflow on rotation, and the arithmetic is the same in every app that draws one.