Sorry, forgot to mention, that for now I worked around it with some code, which solution I don't like.

I wanted to solve this in ShapeSheet 100%. Practically, instead of assigning the MyShapeText user field to the Shape's Text I set it using CallThis and Dependson via a VBA function.
Going back to the original, 100% ShapeSheet solution.
These are the fields I created for the container's subshape(2) i.e. the little header shape.
User.MyShapeText ="SET "&User.TagType&" - "&IF(STRSAME(User.Tag,""),"<Tag>",User.Tag)
User.TagType =IF(STRSAME(User.Tag,""),"<TagType>",Sheet.5!Prop.vsoToggleTag)
User.Tag = IF(STRSAME(Sheet.5!Prop.vsoToggleTag,"Layer"),Sheet.5!Prop.vsoLayerTag,IF(STRSAME(Sheet.5!Prop.vsoToggleTag,"Module"),Sheet.5!Prop.vsoModuleTag,IF(STRSAME(Sheet.5!Prop.vsoToggleTag,"Details"),Sheet.5!Prop.vsoDetailsTag,"NONE")))
For example, if the container's Prop.vsoToggleTag reads "Layer" and the Prop.vsoLayerTag has the value of "Layer 1" then the text will read "SET Layer - Layer 1". This display's perfectly on the "canvas" but not when reading vsoShape.Text in VBA. I get "?" instead.
Now going back to the workaround: I also assigned a MyShapeText user field to the container's main shape which look as:
User.MyShapeText =DEPENDSON(Sheet.230!User.MyShapeText)+CALLTHIS("Common_Logic.SetShapeText",,Sheet.230!User.MyShapeText)
Note: Sheet.230 is the subshape(2), the one I detailed above.
This is the subroutine CALLTHIS calls, pretty basic.
Public Sub SetShapeText(ByRef vsoShape As Visio.Shape, ByVal strText As String)
vsoShape.Text = strText
End Sub