The author is making an ellipsis. What is intended is to refer to the statues of horses mounted at St. Mark's Cathedral. The name of the cathedral being referred to is St. Mark's Cathedral or the Cathedral of St. Mark, not St. Mark Cathedral.
If the author had intended to refer to horses belonging to St. Mark, it would have been proper to write the horses of St. Mark because St. Mark is the name of the man being referred to. Notice that in that case there is not only no apostrophe, but no terminal "s."
But the actual punctuation and final terminal "s" make clear that what the author is referring to are not the horses belonging to a man named St. Mark, but rather to the large equine statues mounted on the facade of a cathedral named St. Mark's Cathedral in Venice. It would be atrocious English to write or say the horses of St. Mark Cathedral. What is good English is to say or write the horses of St. Mark's Cathedral because the name of the cathedral is St. Mark's Cathedral.
The author dropped the third word in the name but carefully and correctly preserved the terminal "s" on "Mark" to make clear that he was abbreviating a place name rather giving the complete name of a human being.
I can see, however, that the ellipsis may confuse those who are not aware that the famous cathedral in Venice named St. Mark's has almost equally famous statues of horses as an adornment.
For an opposing take, see
https://en.m.wikipedia.org/wiki/Horses_of_Saint_Mark
This makes no grammatical sense to me because the statues do not depict putative horses belonging to St. Mark the man.
EDIT The original poster has now added examples of a common error discussed in other threads. To understand why his first example is not an error of that common type (and indeed in my opinion is the only correct syntax to convey the intended meaning) requires cultural context that the author quoted assumed would be shared by his readers. The author may have been wrong in that assumption. He could have avoided any confusion by avoiding the ellipsis.