Welcome to WebmasterWorld Guest from 220.127.116.11
Google has been insistent that web hosts serve up a true 404 server response code when a page not found error is generated from an invalid url.
It is broken and Google warns that it might cause problems leaving it like that.
In options 2 or 3, GoDaddy's server will respond with a 200 HTTP error code - meaning that the page exists and was served properly.
To the OP - has this handling caused a drop in traffic or any other reason that you should be worried about - or are you worried about breaking "the rules"?
After finally understanding this, the office of the president (yes, I reached up the top of the organization) responded that they were aware of the issue, but weren't going to do anything about it - unless, maybe, enough people let them know it was a problem.
GoDaddy's shared Windows hosting server
I use Godaddy with a custom 404 page. When I check it under google webmaster tools under googlebot fetch it returns:
HTTP/1.1 404 Not Found
The AddHeader method adds a new HTML header and value to the response sent to the client. It does not replace an existing header of the same name. After a header has been added, it cannot be removed.
Go into your hosting control panel, then click on the green tab at the top that says settings. Next click on 404 error options in the drop down menu. Then use the custom 404 error page and enter the page you want to use for your error page. Then hit continue and then submit it.
Thats at least how I did it with them to get it to work right. Let me know.
P.S. I use a standard html page with my regular template. No special codes on the page just the standard.
I just figured out why you got confused. When you do a googlebot fetch for the custom 404 page itself it does return a 200 code, but if you do it for a page that does not exist like I did the first time it returns the proper 404 code.