Now I tried it, and the undo functionality is quite nice indeed! It certainly makes the experience a lot smoother by removing the pain caused by mechanical mistakes.
I noticed that the simulation doesn't really follow the rules though, even a simple level like Counters from the default set breaks. My C64 version is actually pretty solid (even when it comes to tricky combinations of stickers), so you can use it as a reference. Processing order matters a lot! The Kye 1.0 port written in Python also seems to be quite faithful to the original in its behaviour, so just replicating that logic should get you pretty far. The others with source (e.g. the Unity one) are not to be trusted.