Sincronización de anchos de control WPF en un WrapPanel

Tengo este caso

<WrapPanel>
    <CheckBox>Really long name</CheckBox>
    <CheckBox>Short</CheckBox>
    <CheckBox>Longer again</CheckBox>
    <CheckBox>Foo</CheckBox>
    <Slider MinWidth="200" />
</WrapPanel>

Quiero que todos los CheckBoxes dentro del WrapPanel tengan el mismo ancho.

Agregando lo siguiente casi logra el efecto deseado.

<WrapPanel.Resources>
    <Style TargetType="CheckBox" BasedOn="{StaticResource {x:Type CheckBox}}">
        <Setter Property="MinWidth" Value="75" />
    </Style>
</WrapPanel.Resources>

Sin embargo, no quiero codificar un ancho específico, en lugar de dejar que el CheckBox más grande establezca el ancho (lo anterior también falla si hay un ancho> 75).

El control deslizante es independiente y se debe permitir que sea más grande que los CheckBoxes.

No quiero usar una cuadrícula (con IsSharedSizeScope) ya que no quiero un número de columnas codificadas.

Este artículo&nbsp;presenta una solución interesante, pero sería bueno resolver el problema sin crear un control personalizado o usar el código C #.

¿Cuál es la mejor manera de hacerlo, preferiblemente solo en XAML?