По той же причине, по которой вы будете реализовывать интерфейсы для других приложений ... чтобы абстрагировать реализацию от использования.
Это позволяет ASP.NET MVC Framework использовать ваш код, даже если разработчики Microsoft не сделалитвоя реализация, прежде чем они написали Framework.
Кроме того, как упоминает tvanfosson ... использование интерфейсов также значительно расширяет возможности команды ASP.NET MVC по правильному модульному тестированию их инфраструктуры.