Undo/Redo and WPF

Brand new! A new part of my Windows Presentation Foundation Tutorials: RoutedCommands. How to use them, create them and a nice addition (if I say so myself): Undo and Redo functionality. This Undo and Redo caused me some pain because I found out that Microsoft did NOT implement the Command pattern in a very nice way. To be able to do Undo and Redo you need to intercept all Command.Execute calls and this proved not to be that easy. But I solved it.
 
Take a look at the code and let me know what you think!