Возможно, вам понадобится создать собственный шаблон для кнопок. (Я полагаю, что вам нужен только цвет при наведении, а не основной цвет, который следует за свойством Background).
Вот очень простой шаблон кнопок, который может помочь вам начать работу.
BackBrush и ForeBrush должны быть настроены в соответствии с требованиями. (И они Back и Fore остальной части приложения, поэтому в этом примере они оглядываются назад)
<Style TargetType="{x:Type Button}">
<Setter Property="OverridesDefaultStyle" Value="true"/>
<Setter Property="ClickMode" Value="Press"/>
<Setter Property="TextBlock.TextWrapping" Value="Wrap"/>
<Setter Property="BorderBrush" Value="#e9dbae" />
<Setter Property="Foreground" Value="{StaticResource BackBrush}" />
<Setter Property="Background" Value="{StaticResource ForeBrush}" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ButtonBase}">
<Border
x:Name="Border"
Background="{TemplateBinding Background}"
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="2"
CornerRadius="2"
SnapsToDevicePixels="False"
RenderTransformOrigin="0.5,0.5"
TextBlock.Foreground="{TemplateBinding Foreground}" >
<ContentPresenter
Margin="2"
HorizontalAlignment="Center"
VerticalAlignment="Center"
/>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsPressed" Value="true">
<Setter TargetName="Border" Property="RenderTransform">
<Setter.Value>
<ScaleTransform ScaleX="0.975" ScaleY="0.975" />
</Setter.Value>
</Setter>
</Trigger>
<Trigger Property="IsEnabled" Value="false">
<Setter Property="Foreground" Value="#999999"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>