I think that depends on the font, and is mostly not going to be true. In the handful of fonts I’m trying, upper case is correctly centred each time (eyeballed only), and small caps is very visibly unbalanced.
Yes, it is going to depend on the font. All fonts don't have real small caps meaning the browser will just scale down the normal capital letters and not appropriately adjusting them to the x-height. Choosing a font is however not just about how it looks, it's also a technical decision. If you gonna print on a certain paper your font may need ink traps, if you want your font to appear centered you want a font that supports true small caps.
I think you may be missing my point: in all the cases I’m looking at, capital letters are centred vertically, not lowercase letters like x (that being what small caps will be tuned to) as you’re suggesting; synthetic or real small caps will make no difference.