I had the same problem, but if you are using IIS 7 or greater you can use httpErrors in the web.config.:
<system.webServer>
<httpErrors errorMode="Custom">
<remove statusCode="404"/>
<error statusCode="404" path="~/Error/NotFound" responseMode="ExecuteURL"/>
</httpErrors>
</system.webServer>
Read more about it here: What is the difference between customErrors and httpErrors?