Based on the sample from MetroStyleWindow, I know we can add a custom button to the title bar.
However, I could not figure out how to set the size of the button so that it will work for different Themes (metro, classic, etc).
<themes:WindowChrome x:Key="DialogWindowChrome" HasMaximizeButton="False" HasMinimizeButton="False" HasRestoreButton="True" >
<themes:WindowChrome.TitleBarContentTemplate>
<DataTemplate>
<Button Style="{DynamicResource {x:Static themes:SharedResourceKeys.WindowTitleBarButtonBaseStyleKey}}"
themes:ThemeProperties.IsActive="{Binding RelativeSource={RelativeSource AncestorType={x:Type Window}}, Path=IsActive}"
ToolTip="Help" ToolTipService.InitialShowDelay="500">
<Button.ContentTemplate>
<DataTemplate>
<Viewbox Width="12" Height="12">
<Canvas Width="24" Height="24">
<Path Fill="{Binding RelativeSource={RelativeSource Self}, Path=(TextElement.Foreground)}"
Data="M10,19H13V22H10V19M12,2C17.35,2.22 19.68,7.62 16.5,11.67C15.67,12.67 14.33,13.33 13.67,14.17C13,15 13,16 13,17H10C10,15.33 10,13.92 10.67,12.92C11.33,11.92 12.67,11.33 13.5,10.67C15.92,8.43 15.32,5.26 12,5A3,3 0 0,0 9,8H6A6,6 0 0,1 12,2Z"/>
</Canvas>
</Viewbox>
</DataTemplate>
</Button.ContentTemplate>
</Button>
</DataTemplate>
</themes:WindowChrome.TitleBarContentTemplate>
</themes:WindowChrome>