No, that is not a viable strategy. It's way too advanced. For it to work, you need to test it carefully. Which means that you need to create scenarios where you need to perform that rollback. And what if the rollback fails, because of something you did not foresee? What do you do in that case? Roll back the rollback?
I don't know what sort of operation you are planning, but the best is to make sure that you have a backup of the database, and if the operation fails, you restore the backup. True, if this is a multi-terabyte database, this can take a very long time. One alternative is to create a database snapshot, and in case of an error, and you can revert from the snapshot, which is a quick operation. There is a risk, though. If your operation makes a lot of updates, the snapshot may break down due to fragmentation in the file system, in which case you will need to do the restore.
Or simply perform the operation inside a transaction, and if it fails, let SQL Server handle the rollback.
I can see scenarios where none of these alternatives are acceptable, but since I don't what your operation that you want to be able to roll back is, I stop at this point, but I reinforce what I said initially: that strategy is not going to work out.