If - and this is a bif if, his real surname is Affleck, then it is an old British name, presumably from the North of Britain - Northern England or Scotland - originally spelled Aughtinlech, but pronounced Affleck
When the man at Staten Island immigration heard names which sounded foreign to his ears, he wrote down how he thought they were pronounced.
This same law applies to many Amercan names as they are spelled today, regardless of the spelling of the name as the original person had it- Italian, Irish, British, Polish, German, etc. The way your new American name was spelled when you arrived in the New World was largely dependent on the way the immigration man spelled it and that was, in turn a direct result of his own ethnicity and origin.
I have often wondered about that, myself.
Either it is because the name is an upper class name of old and in the upper echelons of society the speakers had so many plums in their mouths as to render comprehension by the masses an impossibility.
Or
It is yet another example of the bizarre pronunciations we routinely use for many English words, without batting an eyelid.
The way we say though, cough, epitome, February, knot, Wednesday, eye etc, etc, etc is not according to the English phonetics of the letters used to spell these words. We pronounce them based on how we have heard them said by others.
The Featherstonehaugh/Fanshaw divide might just be another case of this, but it seems really odd because it is not every day you have to write to Mr F.