Espressione regolare, dividere la stringa per lettera maiuscola ma ignorare TLA

Sto usando la regex

System.Text.RegularExpressions.Regex.Replace(stringToSplit, "([AZ])", " $1").Trim() 

per dividere stringhe per lettera maiuscola, ad esempio:

‘MyNameIsSimon’ diventa ‘My Name Is Simon’

Trovo questo incredibilmente utile quando si lavora con le enumerazioni. Quello che vorrei fare è cambiarlo leggermente in modo che le stringhe vengano divise solo se la lettera successiva è una lettera minuscola, ad esempio:

“USAToday” diventerebbe “USA Today”

Può essere fatto?

EDIT: Grazie a tutti per rispondere. Potrei non averlo pensato interamente, in alcuni casi ‘A’ e ‘I’ avrebbero dovuto essere ignorati ma questo non è ansible (almeno non in modo significativo). Nel mio caso però le risposte di seguito fanno quello di cui ho bisogno. Grazie!