Skins work fine in SkeletonGraphic.
"initialSkinName" is currently only applied at the start of play mode, and when it returns from play mode (both situations are where Unity initializes the GameObject). There has been a lingering Unity UI bug that causes things not to update even as you change properties in the inspector and detect those changes. This will be fixed in a future update, hopefully on Unity's side too.
Additionally, what it doesn't do is handle multiple materials.
This is a limitation of the Unity base class it derives from— UnityEngine.UI.MaskableGraphic
— so it works correctly as a maskable Unity UI component.