US addresses in major cities (where these companies operate) is largely solved, though. You can just defer to Google Maps (who have the best geocoder I've ever used- still) or set up a GeoCommons geocoder locally, which isn't anywhere near as good, but does work with well formatted addresses.
Not at all. <Street Address> <Apt Number> New York NY 10027. It would present me with three "corrected" options that were all the same, and then when I chose one it would send me to an error page.
Speaking from experience... apartment numbers are one of the most difficult things to process correctly when geocoding, particularly if your service is backed by Google. The experience you describe sounds exactly like someone didn't correctly handle the edge cases surrounding subunit numbers.
I spent quite some time banging my head against these issues for a former employer. Lots of trial-and-error was employed to build up a basket of test cases around apartments. Certain addresses remained intractable.