I think if it's assumed that their intent is to be late.
Зачем, to my understanding, would be perfectly acceptable to use if you're asking your rebellious teen why they choose to never show up on time.
But if you're asking for some unspecified cause, or you're not assuming the cause is a result of their intent, i.e. they were late because there was heavy traffic, or they woke up late, or they lost track of time, I think почему would be used.
It is a soft sign. It means that the consonant before it ш should be pronounced softly. In Russian each consonant can pronounced be either soft or hard. Usually this is actually expressed by having each vocal in two forms e.g. soft я versus hard а which also changes the consonant in front of it. Sometimes there is no vowel and then you use the soft sign ь.
There is also a course to learn English if you already speak Russian, or do you learn both languages at the same time?
It is a long time since studied English grammar, so you might get better expansions from someone else. Note that late modifies and adjective: late. It is he is always late, it was always hungry, she is always beautiful. Other examples would be often, rarely, really, .... these words should go before the adjective that they modify.
This does not apply to words that don't modify the adjective for example. You are late, today. You are late on Mondays. You are late as always.
Possibly--there are always so many variations with different shades of meaning or context. "Run" or "Running" gives it a sense of continuity or repetition. For example, you might always be late for work (once each day) or you might always be running late for meetings (throughout the day). Also, people say they are running late when it's in process, like 10 minutes before a meeting you call and say, "I'm running late; I will be there in 20 minutes."
Well, I tried to recall that phrase from memory. English is not my first language.
Like Theron126 says, you really need to put your suggested answer into a complete sentence.
But still - "get late" is just wrong English idiom. You shouldn't even try to use it.
"be late" might work, but it's suggestive of English subjunctive tense, which has been almost but abandoned by English speakers. We rarely use that tense anymore.