Если вы установите DataContext любого данного элемента, то КАЖДАЯ привязка (включая дочерние) этого элемента будет использовать DataContext в качестве источника, если вы явно не предоставите другой источник.
Похоже, что вы указываете сразу 2 DataContext (UserControl.DataContext НЕ читается, поскольку ViewButton.DataContext установлен, и первый найденный источник считает).
Вы можете явно взять текст данных данного элемента, как утверждает Кент
ИЛИ ЖЕ
Вы можете указать источник явно.
например,
<ViewButton
Visibility="{Binding Path=SomeFlag, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type UserControl}}, Converter={StaticResource BoolToVisibilityConverter}}"
DataContext="{Binding Path=SomeCommandViewModel}" />