This shouldn't be a ColdFusion-related issue if I'm understanding you correctly.
All error mappings in IIS are defined in the ERROR PAGES module of IIS.
You can define a 404 there, but I don't believe you can speciy 3XX series "errors". 300 errors are "Redirection" codes (an error didn't necessarily occur, however the client must take an additional step to complete the request.). For example, if you request a page that has been cached, the server/client determines this and returns a '304 Not Modified', but it isn't an error that IIS is going to concern itself with. So his request to add a 301 (Moved Permanetly) is better handled programmatically along with the forward to the resource's updated location.
As for the 404, the path you enter is relative the the site root. So in the user's root, is there a '404index.cfm' file?