For some reason, speed buttons are created with Transparent = True. It just happens that this is ignored when Flat is false, probably to be able to build the 3D frame more easily.
Here (attached image) is the difference between styles: Flat = True/False and, when Flat = True, Transparent = True/False
Note that speed buttons are mostly intended to show an icon/glyph, so making them transparent by default means that, when flat, the icon shows over the background by itself until you hover the pointer over it. That's probably another consideration for them to be created as transparent.