:DisableWhitespace leaves the matches in other windows around, from :echo getmatches():
{'group': 'ExtraWhitespace', 'pattern': '\s\+$', 'priority': 10, 'id': 1}
TEST CASE:
vim -c 'EnableWhitespace' -c 'norm ifoo ' -c 'new' -c 'DisableWhitespace'
After this, the trailing space in the first window is still highlighted.
This is related to issue #3 (local settings per buffer/window).