Earlier quoted context omitted.
The reason a mac is required for development is that iOS and OS X are essentially the same operating system - they just have different user interfaces. When you run your app under the iOS "simulator", it is actually running as a native OS X app, linked against a version the iOS user interface libraries that have been compiled for OS X. For Apple to support development on other platforms, as far as I can see the only…
For the sound of it, the job would be compiling a cross-target version of GCC/LLVM and putting QEMU, an iOS ISO and some libs in a TGZ. Could hardly be called a major feat of engineering.
I think it would be a moderately difficult engineering task, but certainly not outside Apple's capabilities. Ultimately it's a question of whether or not Apple sees benefits in doing so, which I suspect they don't.
It's also interesting to note that back in the dying days of NeXT, when they realised they weren't going to make much money from hardware, they switched to a software-only approach and actually did a port of all the Cocoa frameworks to Windows NT, and you could write Cocoa applications and have them run on windows. So it's not impossible to do this, but given the amount of changes that have happened to the APIs since that time it would probably be easier to go down the VM route.