Aren't Irish names that begin with " O' " a contraction of "Of ____"?
They used to. You may be interested in my answer to a similar question here.
Surnames became fixed in England in the aftermath of the Norman Invasion in 1066. At first, these fixed surnames did include the "at"s, "of"s, "the"s, and "at the"s in them.
This book includes records relating to the King of Scotland in the 1200s and you see all sorts of "John the Smith" and "William of Oxford" type last names in it.
During the Hundred Years War, however, these articles and prepositions disappeared. As to why, I've never seen any solid evidence one way or the other but one possibility is that the English were trying to distance themselves from the French. The two populations were essentially the only two in Europe using fixed surnames at that point. The rest of the continent was using a variety of different systems, mostly patronymic surnames.
It's notable that this period was also the period in which the kings of England (Henry III, Henry IV) first began speaking English in court rather than French.
Perhaps the easiest way to see this trend away from prepositions/articles is in the family of Geoffrey Chaucer's wife. Her name is usually rendered as "Phillipa Roet" ("Phillipa Red") while her father is usually written of as "Paon de Roet" ("Paon the Red").
In truth, both styles were used in written records of the time for both people, but it shows that the naming convention was going out of style during the Hundred Years War. By 1400, using "of", "the", or "at" in an English surname was pretty much unheard of.
EDIT: Added the bit about the language of English kings.
Because languages just don't directly translate. What grammar sounds appropriate in one language might sound incorrect in another. It's really that simple.