Как убрать пустоты при использовании Viewbox?

<Viewbox Margin="0,0,0,0" VerticalAlignment="Top" x:Name="WorkPanel" HorizontalAlignment="Stretch">
   
    <DockPanel  VerticalAlignment="Stretch" HorizontalAlignment="Stretch" SizeChanged="DockPanel_SizeChanged" >
        <ToolBar DockPanel.Dock="Top" 
             Background="{DynamicResource 3DBorder}" >            
            <Button ...
            </Button>
        </ToolBar>
 
        <Border Grid.Row="1" HorizontalAlignment="Stretch" x:Name="brdr_main" >
          ...
     </Border>
    </DockPanel>
</Viewbox>

Если Stretch=Uniform - появляются пустоты, если Stretch=Fill - шрифты непропорционально удлиняются, если UniformToFill - не умещается в окно. Как сделать чтобы сохранить пропорции шрифтов, но чтобы рамки занимали всю возможную область? Писать кастомный компонент?