Scratch should be seen as a tricycle and meant to be used as an introduction to programming concepts. You can learn more on Scratch MIT.
It's meant to be fun, safe, and reasonably representative, but it's also designed to be outgrown and if you find your lessons are not being met with the same enthusiasm you can move on to more complicated languages.
Having said that, I ran a Scratch game development contests for some time now with the kids in the family, which has been met with a lot of enjoyment. And I have seen my nieces and nephews make some really great stuff with Scratch.
And I have been able to create a reasonably accurate orbital mechanics simulation with it. But that is the subject of another post.
You can do a lot of neat things with it which even a little bit older children can enjoy.
But since kids like to see what they have made programming can be a challenge to teach. And other languages have a higher upfront cost when it comes to getting things on the screen. That is why Scratch comes with two graphic editors as well as a basic but serviceable audio capture and editing tool.