Lol, I feel your pain regarding the Revit API. For my day job I am the sole developer working on a major addon for Revit. It is one seriously convoluted API. Also switching between cad and games programming can get confusing because in 3D cad, Z is your up vector and Y is north.
Anyway, to answer your question, I say go for it. If you want to make it a 'real world' learning experience, I would plan it out first and create a list of concepts that must be presented then work through them. Don't give up on one because you get stuck, pretend that someone is paying you to do this and will not accept failure, get it done!