I had the same issue as bbodenmiller where everything worked fine until I had to cast to the newly made class. mapView = (MyMapView) findViewById(R.id.mapview); Would consistently throw an exception.
The solution is to change the XML layout where we are displaying the customized MapView. When you use a vanilla MapView your XML layout is something like this:
The problem lies in that "com.google.android.maps.MapView" defines the view as being specifically a MapView. You need to define it instead with your customized MapView. It ends up looking more like this.