English is one of few languages where the relationship between the writing and the pronunciation of the vowels is mostly unpredictable, so knowing whether a word is spelled with "o" or with "ou" does not help you to know how to pronounce it.
So for the case of English, you are right that spelling is a cultural artefact, but not for the case of most languages, including Latin.
The oscillations in the spelling of Old French were caused by the fact that French had acquired some vowels that did not exist in Latin, e.g. front rounded vowels, so the French speakers did not know what Latin letters should be used to write them, and there existed no standardizing institution to choose some official spelling.