Работа над ошибками закончена. Тем не менее мне так и не удалось выяснить откуда выросла эта рассинхронизация. Вроде везде всё как и надо, а на выходе - дрейф. Так или иначе - вот исправленная версия.
Click to view
*ушёл бродить по сообществам, править записи*
PS. Кажется история этого проекта пока что не закончена. Как это часто бывает, ответ на один вопрос породил ещё парочку…