There's no shame in using Game Maker, in our field, it's best to use the tools that get the results you need.
I'm not sure how AppGameKit fares against Game Maker in terms of speed, to be honest I don't think there's much in it. Really, the performance is probably going to be affected by the way you handle the map. I've been doing some tests with tile maps, and am sure that AppGameKit can cope fairly well. I mean, if you had a like for like comparison between GM and AppGameKit, using sprites/objects to make a level, then they would be about the same speed. But, when you factor in collision detection, well even using a library like Box2D won't be anywhere near as fast as using array based collision, rather than checking a complex shape, you use the map data to check for collision. With a lot of path finding, AI, logic, well AppGameKit comes out on top at the end of the day. GM does a lot for you, but I'd be hesitant to try using it for a decent sized RTS game. What you have to consider more than anything, is the way you handle your map sprites, or map sprite - AppGameKit and GM are both similar, in that you can utilise the Z depth to control drawing order, giving your 2D sprites a bit of depth, which would be vital for things like buildings and characters. Perhaps it would be worth posting a screenshot of what you have, or even a rough sketch of how you want it to look. Personally, I'd use different sized sprites for buildings, trees, etc, and fixed sized map tiles, then use Z depth to keep everything layered properly. Doing that in GM would quickly become tedious IMO... better to have direct control over proceedings I think.
When you scale down or up, you might have some issues with image quality, I think it depends on the min and mag filter settings. I've found that using no blending gives the sharpest results, using blending (min/mag filters activated) does a decent job of smoothing things out, but your always gonna loose quality when you scale. I think that if your concerned, maybe consider having a high and low res set of graphics, so say the iPad at 1024x768 could be the standard high res, then the iPhone4/iPod could use 960x640 and loose a little bit of screen space, so no scaling on those - same goes for any tablet really. The problem would occur with devices that are much lower resolution, where you would have to scale the graphics. I would do a check, see if the device resolution falls within a reasonable tolerance, say 800 - 1024 wide means the resolution is set natively, no scaling, no loss of quality - but anything below that needs scaling. At least that way your giving the best support to the best, and arguably the most popular devices.
If you know C++, then AppGameKit will be a breeze, it'll be so easy to get into it won't even be funny. It's not like OpenGL, or those libraries that often need custom modifications, and always need 'babysitting' code - everything is there, waiting to be used, not delegated and abstracted. The choice between using C++ or BASIC with AppGameKit, is really about programming syntax, which code structure and style do you prefer, rather than there being any stark differences. You can even use Pascal with AppGameKit now, if the fancy takes you.
If you like, you should check out the 'Tiled Map Example' in this forum - the code is included with a Windows executable.
Health, Ammo, and bacon and eggs!