The difference between saving a snapshot versus saving a new .nki is that a snapshot contains
only control settings, nothing else. That's why it's so much faster to load a snapshot versus another instrument. The downside is if you're into modifying sample mapping or scripting or changing up modules, you'll still have to save it as a new .nki file.
Another potential downside is that snapshots are not global, but are instead tied to one instrument. That means if you're going to adopt snapshots you should just go that route and stop saving new instrument definitions unless you have to.
Although I like snapshots, it does seem a little bit of overkill just to replace an Undo function. Just imagine if SONAR didn't have an undo feature and made you save off new .cwp files in order to backtrack. Heck, even Ozone has an undo stack.