Что-то про виртуальное дерево было, что идёт сравнение данных по ссылке, что перерисовка только для изменённых ссылок. Весь массив за одну ссылку берётся что ли? Не просматривает массив на сохранённые ссылки?
Статьи такие не искал и не видел. Просто, исходя из текста задачи и здравого смысла, получается, что нужен единый источник времени для синхронизации. Анимация из описания svg не может быть таким источником, потому что оттуда невозможно получить какие-либо сигналы-события, связанные с анимацией. Или я просто не знаю. Поэтому за источник выбирается процедура переключения цифр, которая, очевидно, работает по таймеру. И в этой процедуре проводить совместный расчёт цифр и параметров дуги.
Навскидку, полагаю, что таймер для цифр расчитывается с погрешностью, а анимация дуги задается при инициализации и считается где-то внутри без погрешностей.
Значит, имеющийся desk уничтожается со своим onclick-ом из-за присваивания в innerHTML.
Требуемые действия лучше делать через присвоение и удаление стилизующих классов, в том числе включающих сокрытие и отображение блоков.
https://learn.javascript.ru/bitwise-operators
так надо, видимо.
parseInt( '1536' ) & ~parseInt( '600' )