Your update does sound like there's some ND going on. A phrase I heard on here and which I repeat to myself religiously to help me cope with the dramas now is that some kids just need more scaffolding than others.
By now, you'd hope and therefore try to take some of it down but it goes horribly wrong!
In DS case, he hates the fact that he forgets so much stuff, that he can't organise himself, that he loses things, that he leaves jobs half done constantly. I've accepted it's not because he's lazy / immature / not trying / needs to learn but that he simply CAN'T do it yet. And, as a parent, I need to keep more of the scaffolding up for him.
I still try to take it down / remove some struts every now and then but I accept that that is likely to result in some stuff getting forgotten and that it's part of the process.
So, regardless of a diagnosis etc you can still shift your mindset in that she will need more support and be willing to help her to avoid the perceived failure which is what is setting off the reaction.
So, set different alarms on your phone eg Teeth, Breakfast, Get Dresses that builds in LOADS of time for all the morning stuff so you don't need to be abrupt and you are overseeing that she's on time in morning.
With your homework example, I'd actually not say anything at this stage. She'd done it (just) in time and you pulled her up on something that wasn't even an issue? Instead, praise her for doing it!
The history sounds like it's been established as a battleground whereas you now need to disengage to reset the perception: Mum isn't here to nag, you won't get cross, you are here to help.
Then follow through and don't get cross even if she's driving you up the wall - so try to pick up earlier what needs to be done and provide that scaffolding / structure to get it done. Gentle, frequent reminders "let me know if you want help with your homework tonight - what have you got is it interesting?" Or toddlers choice "shall we do it together now or would you prefer to do it on your own whilst I do xyz?" Then if she blows up you need to disengage "ok I can see your upset it doesn't matter it's only homework we'll look at it later" rather that 'oh for god sake I said we should have done this sooner now look what's happened" etc