What I really don't know is what prevents them from giving it us in English worldwide.
Even if some of the functionality is not available, some of the other stuff is really useful (such as using reminders, quite hours, inner circle, e-mail reading for schedules, etc.), and even if our English isn't perfect, there are hundreds of millions of non-native English speakers around the world.
Because Microsoft would be damned if they do and damned if they don't, there are a lot of people who DON'T speak English.
Why is MS damned either way? I don't think they are. People who can't speak English well enough to use Cortana typically have little difficulty accepting that getting other languages to work is difficult and takes time. It just shouldn't take years.
However, if I set my OS and speech setting to the same language, and if Cortana supports it, then Cortana must run. There is no excuse for her not to, because the user just told the OS that he/she is proficient in that language. It shouldn't matter where that person lives, which units of measurement that person uses, or how they like their numbers formatted on on screen!
There are many people who want Cortana to work like that. For example, I live in Switzerland, were 25% of the population were born elsewhere! That explains why English is very common here, even if it is not one of our official languages (of which we have four). I work with dozens of people who were born and raised in the U.S. or the U.K. Is MS assuming they all must have forgotten how to speak their native language? I grew up here, but I also prefer my technical gear to be setup in English (shorter words, easier to use the correct terminology for internet searches, etc). Cortana understands me really well too. That I can't use Cortana without having to set my region to the U.S. seems like a very artificial restriction that serves no purpose.
People are gonna moan no matter what happens. Many people sure know English, but few are good at speaking.
I'd be very glad though if there's Cortana in German.
I think there should be separate voices for different regions. Accents can be very confusing (the French are especially bad at it), and there are even more troubles than just accents. IMO it's better if Cortana understands the spoken language from all regions of each country, since the differences are very noticeable between written and spoken ones in some languages, like French. The written one is stuck like 200 years in the past (thanks you, Acad?mie Fran?aise), while the spoken ones keep changing all the time, even between regions.
Different voices for different regions might be a little difficult but not impossible.
MS already solved the technical issues, as the U.K. Cortana uses a different accent than the U.S. Cortana. For other voices it's just more work (although likely a lot of it).
For everything else, like I said, just let people choose which voice they want. MS should not assume they know which voice is best, based solely on the device's region setting. Boom. Problem solved.