title: Widget preview is using wrong size family
body: <p>I have a widget view looking like this:</p>
  <pre><code>struct WidgetEntryView: View {
      var entry: Provider.Entry
  
      @Environment(\.widgetFamily) var family
      
      var body: some View {
          switch family {
          case .systemSmall:
              ZStack {
                  VStack(spacing: 12) {
                      // ...
                  }
                  .padding(10)
                  .frame(maxWidth: .infinity, maxHeight: .infinity)
              }
              .background(Color.red.edgesIgnoringSafeArea(.all))
          case .systemMedium:
              ZStack {
                  VStack(spacing: 12) {
                      // ...
                  }
                  .padding(10)
                  .frame(maxWidth: .infinity, maxHeight: .infinity)
              }
              .background(Color.blue.edgesIgnoringSafeArea(.all))
          default:
              ZStack {
                  VStack(spacing: 12) {
                      // ...
                      
                  }
                  .padding(10)
                  .frame(maxWidth: .infinity, maxHeight: .infinity)
              }
              .background(Color.black.edgesIgnoringSafeArea(.all))
          }
      }
  }
  </code></pre>
  <p>The widget supports all 3 main size families:</p>
  <pre><code>struct MyWidget: Widget {
      let kind: String = &quot;MyWidget&quot;
      
      var body: some WidgetConfiguration {
          IntentConfiguration(kind: kind, intent: ConfigurationIntent.self, provider: Provider()) { entry in
              WidgetEntryView(entry: entry)
          }
          .configurationDisplayName(&quot;MyWidget&quot;)
          .description(&quot;...&quot;)
          .supportedFamilies([.systemSmall, .systemMedium, .systemLarge])
      }
  }
  </code></pre>
  <p>And here's my PreviewProvider:</p>
  <pre><code>struct Widget_Previews: PreviewProvider {
      static var previews: some View {
          Group {
              WidgetEntryView(entry: SimpleEntry(date: Date(), configuration: ConfigurationIntent())
                  .previewContext(WidgetPreviewContext(family: .systemSmall))
              WidgetEntryView(entry: SimpleEntry(date: Date(), configuration: ConfigurationIntent())
                  .previewContext(WidgetPreviewContext(family: .systemMedium))
              WidgetEntryView(entry: SimpleEntry(date: Date(), configuration: ConfigurationIntent())
                  .previewContext(WidgetPreviewContext(family: .systemLarge))
          }
      }
  }
  </code></pre>
  <p>So I have a preview for each size family on the canvas, but for some reason, all of them are rendered with a blue background. Or in other words, all of them are rendered as a <code>.systemMedium</code> family. When I actually run the widget on the simulator, it has the correct look. Why does the preview always skip to the <code>.systemMedium</code> case and ignores the other ones? How can I fix this?</p>