I think i found the issue, it seems as though iOS doesnt allow gradient styling in the button control? The Background property has these two styles set
Background="{AppThemeBinding Light={StaticResource ForestLight},
Dark={StaticResource ForestMid}}"
Both of those static resources are linear gradient brushes defined in my styles.xaml file.
I set the iOS to a solid colour (i.e. LightGreen) and it doesnt mis-shape the button anymore. I am now wondering if there is a work around for adding gradient styles to a button control for iOS, but i suppose that is another question altogether.