Hello Mike,
I can confirm that the Email.ViewInBrowserUrl macro does work only in email templates of the Email type, but does not work in other types (Subscription, Unsubscription, Double opt-in).
The reason behind this is that the macro requires subscriber context that available only within the Email type. I've passed this feedback to our technical writers and they'll consider adding this information to our docs. Anyway, thank you for letting us know about this and let me apologize for this inconvenience!