That is the wrong way to handle this. You don't have to support everything in the list. If your product is only for people in America you can expect them to have a name written in latin letters. You can ask them for a surname and a given name, and they will be able to fill it in, but may be slightly annoyed. You should allow apostrophes and accented letters, but it's really not hard these days with UTF-8. ASCII is too limited.
As you support more countries you will need to support more kinds of names.