Вам необходимо расширить DoubleAnimation, добавить анимацию KeyFrame.Также установите базовую непрозрачность на 0, а затем постепенно добавьте нужную вам.Например:
<VisualState x:Name="Checked">
<Storyboard>
<DoubleAnimationUsingKeyFrames Storyboard.TargetName="CheckedVisual" Storyboard.TargetProperty="Opacity">
<EasingDoubleKeyFrame KeyTime="0" Value="0"/>
<EasingDoubleKeyFrame KeyTime="0:0:1" Value="1"/>
</DoubleAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
Каждый раз, когда состояние изменяется, оно возвращается к базовому состоянию, а затем к состоянию, которое было вызвано.Поскольку тумблер всегда находится во включенном или выключенном состоянии, он не будет находиться в невидимом состоянии.