Похоже, у вас есть неявный стиль для GridViewColumn, который перезаписывает изменения, сделанные вами локально.
Во время разработки этот неявный стиль не учитывается (может быть по разным причинам), но во время выполнения он есть, и вы получаете такое странное поведение.
Я бы начал с просмотра раздела Ресурсы в App.xaml, а затем двигался вверх, пока не достигнул нужного мне элемента управления.
Дополнение: неявные стили:
<UserControl>
<UserControl.Resources>
<Style TargetType="TextBlock">
<Setter Property="FontSize" Value="40" /> <!-- stupid value, just to make it obvious it changed something =) -->
</Style>
</UserControl.Resources>
</UserControl>
Если вы когда-нибудь захотите определить неявный стиль локально, не переписывая другой неявный стиль, установленный выше по цепочке, вы можете сделать это:
<UserControl>
<UserControl.Resources>
<Style TargetType="TextBlock" BasedOn="{StaticResource {x:Type TextBlock}}">
<Setter Property="FontSize" Value="60" /> <!-- ridiculous value, just to make it obvious it changed something =) -->
</Style>
</UserControl.Resources>
</UserControl>
Он унаследует неявный стиль и добавит изменения для локального UserControl.