I may be responding to this post too late, but I find myself very relevant to answer and appreciate this question.
I've taught Scratch for around 5 years, to Ages: 6 to 18 (currently, I am teaching Scratch as a starter for "Introduction to Programming" at University level... if you might know Harvard University does the same!)
I've also taught Construct 2 for around 2 years to similar age group, mostly younger ones.
Based on my years of usage and teaching experience for both softwares: Scratch, the way the programming flow works, it resembles any other syntax based programming (top to bottom), similar loop/if/else structure. I think if "Teaching Programming" is the aim, then I would go for Scratch despite its poor FPS and lack of game-making simplicity.
If, on the other hand, "Making Games" and/or "Logic Building" is the aim, then I would definitely go for Construct 2. The difference is, C2 is the most sophisticated yet simplest 2D game making software I have ever used (among 15+ more that I've tried). All the behaviors, the relevant list of conditions and actions, the necessary yet optional set of settings for each behavior, layout, layer, objects, (etc) - All of these does not let you get stuck anywhere, and it just helps implement 'your' logic the way you want very easily <--- Doesn't it? but here's the catch: It won't help the person 'learn' the structured programming or even the classical troubleshooting skills, which could be learnt with Scratch. Meaning, things are made so simple* in C2, that for a beginner, jumping to an actual programming language will be very frustrating, despite he/she will be too good at algorithmic thinking.
* Example: A top view Car game... in C2, the user will just select the Car behavior with Keyboard object and a good percentage of the game is already completed without a single line of coding! - No Learning really - In scratch, the user will use several if/else commands with variables to achieve that Car like control - Decent amount programming done!
Construct 2: 70% Fun, while 30% learn Programming skills,
Scratch: 30% as Fun, but 70% helps learn Programming.
So, it depends on what is the 'aim' of the course. For me, I used to go with C2 during Fun Summer Camps (short courses), and I choose Scratch for a longer term "Programming" course to prepare them for syntax based coding in future.
Hope this helps.