When is it correct to use upper case letters for nouns that may only be unique in a given context?
I love your question. :-) (very unprofessional of me, I know.)
Acronyms are always capitalized, in order to alert the reader that the nonsense word they have just encountered is, indeed, an acronym.
I think the pertinent concept here is titles. Though common words appear in titles, the words in titles are capitalized.
When buildings are given a (common) title (as in your example, Student Union Building), they are capitalized on the building itself (often in the school's literature as well), because that is the building's title. You need not capitalized when you write about them using the common name. One would be surprised to see "student cafeteria" on a building, because that is the building's title, and as such, the words should begin with upper case letters.
Pertaining to example 2, your source may provide you a semblance of an answer in rules 9 and 10. "City Hall" is capitalized because it is a specific city hall, Vancouver's city hall. It is a title (Vancouver City Hall) for a specific building. Random or unspecified city halls or fire houses are not capitalized. Same with specific town halls (Trenton Town Hall), hospitals (Good Samaritan Hospital), etc. They are titles.
Pertaining to example 3, specific events, like books, have titles, and the first letter of the words in a title (with exceptions you are probably familiar with) are capitalized. So while people run marathons, they might not qualify to run in the Boston City Marathon; your dance is 'titled' "Winter Formal Dance". Wednesday Practice is also a specific, titled event, even if it occurs every week.
You might look at this page. It has a bit more detail on the use of capitals than your source.