I think Apple would restrict development requirements in the App Store to ban iOS apps created with a Non-Apple compiler on a Non-Apple platform just like they banned Adobe Flash and iOS apps made with Flash.
Not only that but Apple would sue anyone who made an environment to run iOS apps on a non-Apple operating system.
I kind of have a Love-Hate relationship with Apple because of that. I feel that iOS apps should be made on any platform and be allowed to run on any platform. Android is the complete opposite of iOS/Apple, any platform and any language can develop Android apps, you can choose more than just one store to buy apps from, and there is this Bluestack app http://bluestacks.com/ that runs Android apps on Windows and there is a beta for Mac OS X IIRC. Not only that but there is an Android for PC OS: http://www.android-x86.org/download
For now people want to develop for the App Store and they pay for the expensive machinery to get a piece of the action. If the Google Play Store ever becomes the trendy target market and Apple's position is threatened, I imagine they might consider opening up.
In my case, I'm using MOAI (http://getmoai.com). If you check my comment history, you will see I'm quite the MOAI fanboix, and I've given a fair bit of details about how it works - so please check my history for more info.
In a nutshell, I use Linux to develop MOAI applications, and I use the Linux-native MOAI host to test/develop/code for it. It works like this: Fire up SublimeText2, write Lua code for the MOAI framework, run the MOAI host with that Lua code on my local Linux DAW. Check in the MOAI Lua code to my repo - wait for my build server on OSX to check it out, package it into an .ipa file, run it on the iOS devices plugged into my Macbook.
You would still need XCode somewhere to deploy to iOS - but you can do all the development on Linux or Windows, and the MOAI app won't just run on iOS - but also Linux, OSX native, Chrome Native Client, Android and iOS.
And before you worry that performance won't be great - performance is great. :) And there is no greater feeling in the world right now than to be developing an app on Linux, and in a few seconds watching that same app being deployed immediately on Android and iOS devices in my lab, without too much fuss. Same look, same feel, same app: completely different platforms.
I really encourage you to check it out - and as long as you can convince someone to run the XCode build phase for you, somewhere, you can deploy to iOS simply as another target architecture, alongside all the other archs that your Linux machine can support (in my case my Linux machine also builds the Android product..)
If you have any further questions, don't hesitate to come to the MOAI forums and ask: http://http://getmoai.com/forums/
Second of all, the MOAI API and programming environment is a lot, lot nicer than Objective-C/XCode/Frameworks.
But I say this, of course, with 4 years of experience in Mobile development, and 2 years with MOAI specifically. Of course I'm overlooking the training period I've been through - for a newcomer it may indeed look like a lot of hassle. But I swear, once you have spent a couple days building an app in Linux with MOAI, and then simply deploy it straight to Windows/OSX/Android/iOS targets, the value is obvious. I simply won't go back to XCode/Android/&etc. now - its just too fun to be building apps this way. One set of code, develop on your platform of choice, deploy all the way to the walled garden, and back again, around about the massive fields of Linux/Windows/OSX, and so on.