It would be very simple to feed in some midi from real pieces of varying levels to replace the random generation.
Getting solid curated input data would also be tricky, unless there's some big and well-annotated library of midi recordings sitting around somewhere.
For building a good app today, your best bet is almost certainly to use existing sheet music, pieces and etudes in the given style.