It's the XCode connection that matters.
I suspect part of the confusion stems from the legalese, which appears to have forgotten a fundamental tenet of programming: code = data.
When I run a Unity-authored app on an iPad, it's *Unity* I'm running, and that was indeed written using XCode and the relevant Apple-approved SDKs! The only difference between one Unity app and another is the *database* that's been nailed onto the Unity engine. That database is the key, but it is *data*. The specific code that makes one Unity app different form another is just one part of that database, along with all the 3D models, textures, sound effects and so on.
The same point applies to Flash apps too, so all that bollocks requiring a particular language is just legal fluff written by someone who is ignorant of how software development works. It's unenforceable and therefore cannot be legally binding.
For Apple, the key is the ability for a developer to keep up with iDevice changes and SDK updates that's key here. Apple want ensure their iDevices retain an edge over the competition, which means having iApps ready to roll on launch. If a major, popular iApp is written in Flash, and the new upgrade breaks it, Apple would get most of the flak—witness how often people whine about Microsoft even though the vast majority of Windows crashes are entirely attributable to third-party developers.
If I code for Flash, I'm *entirely* dependent on Adobe's update cycles, which are notoriously long, because Adobe's technology completely bypasses Apple's iOS SDK.
As the article points out, Unity *requires* the iOS SDK to build its apps, and allows you to write your own extensions and hooks to Unity's basic engine to take advantage of new features whenever they're released by Apple.
One is a wholly Adobe-controlled platform divorcing the developer entirely from the underlying hardware and OS. The other is a more open, flexible platform which lets you get as deep into the underlying hardware and OS as you wish.
I don't think Apple could enforce the "Must use C/C++/Objective C" rule even if they wanted to: it's damned near impossible to prove with 100% certainty. But they *can* police the "must use XCode / SDK" stuff. And that seems to be what they're doing.