CupertinoTabView is not hot reload friendly

Hot reload won't apply changes made to the builder of a CupertinoTabView. A hot restart is required to see the effect of those changes. This was hit by participants in a UX study and no one had any clue about why hot reload stopped working. The code below can reproduce the issue:

import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  Widget build(BuildContext context) {
    return CupertinoApp(
      home: HomeScreen(),
    );
  }
}

class HomeScreen extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return CupertinoTabScaffold(
      tabBar: CupertinoTabBar(items: [
        BottomNavigationBarItem(
          icon: Icon(CupertinoIcons.home),
          title: Text('Home'),
        ),
        BottomNavigationBarItem(
          icon: Icon(CupertinoIcons.settings),
          title: Text('Settings'),
        ),
      ]),
      tabBuilder: (context, index) {
        if (index == 0) {
          return Center(
            child: Text("Home Screen",
                style: Theme.of(context).textTheme.display1),
          );
        } else {
          return CupertinoTabView(
            builder: (context) {
              return Center(
                // Changing the text style of the Text widget below requires a
                // hot restart to see its effect.
                child: Text("Settings Screen",
                    style: Theme.of(context).textTheme.display1),
              );
            },
          );
        }
      },
    );
  }
}

Cc: @jacob314 @Hixie