I've used the same approach for many years and it's saved me more times than I can remember.
I agree with @simoesp that I'd have the rollback by default. I also tend to show the after state as well as the before state so I can see what the change were. For a simple scenario this may be overkill, but it's particularly useful for complex updates (cases) and/or updates/deletes with joins to other tables.
My variation goes along the lines of:
declare @doCommit bit = 0;
SELECT 'BEFORE' 'BEFORE', * FROM dbo.account WHERE account_code='4c';
UPDATE account SET active_yn =0 WHERE account_code='4c'
SELECT 'AFTER' 'AFTER', * FROM dbo.account WHERE account_code='4c'
if @doCommit = 1
select '!! COMMITTED !!'
select '!! ROLLBACK !!'