I just ran into a facinating issue. If you setup a XamRibbon with a RibbonTabItem that has it's Visibility property changed during the OnLoad event of the control it will Collapse/Hide the control but it will not do the same for it's children. Whereas if you explicitly set it's Visibility property during the Contstructor or in the XAML it will Collapse/Hide itself and it's children.
This behavior makes it so that if you have two RibbonTabItems with children and you Collapse/Hide the first during the OnLoad event it then appears as if the second RibbonTabItem is selected with the children of the first displayed.
Shoudn't changing the Visibility property at any time also change the visibility of it's children?
This sounds like another issue that was previously reported and address in a hotfix. You should contact the support group and reference issue #BR33755. You should provide a sample of the issue you're seeing so they can ensure that the issue you are encountering is indeed fixed by the hotfix.