Ok figured it out. It turns out that macos only supports TabView on Settings windows! I worked around this by using SettingsLink to open the Settings window after defining it as follows in my @main block
Settings {
SettingsView()
}
This is a pretty irritating limitation, hopefully it gets fixed in future releases.