The reason you need to explicitly inject a default route into a NSSA area is because the external route(s) you are injecting could also be (and often is) a default route. If you redistribute a default route (for example, a static route) into an NSSA, that would conflict with the type 3 default route from the ABR. To avoid that problem, the type 3 default route is optional.