Вам нужно перестать бежать за школой. Делать вместе уроки тоже бесполезно. Если тугодум, то нужно проходить основные трудные места заранее, чтобы он мог понимать объяснения учителя. Мой сын тоже одно время отставал по математике. Тогда мы выбирали задачу потруднее и решали ее до тех пор пока он начинал понимать каждое действие. Параллельно, для объяснения отдельных моментов, разбирали задачи в одно действие. На это уходило много времени, но зато потом он решал такие задачи сам. Кстати, в программе все задачки можно рассортировать на 5-6 типов, полезно и ребенка научить их распознавать. Еще важно научить ребенка делать схемы ко всем самым простеньким задачам, а для начала использовать настоящие предметы. Полезно любую задачу, даже на скорость, воспроизводить с предметами и использовать сантиметр для измерения пути, а часы для измерения времени. С большими числами и дробями то же самое, нужно показать их ему летом, используя яблоки и точки домино. Возможно вам помогут некоторые приемы из темы
Как научить ребенка считать?.
Используйте мнемонические приемы для всех предметов: стихов картинок и неожиданных образов.
Стройте обучение так, чтобы все прежнее постоянно повторялось на новом уровне.
Так, когда мы с Оленькой считаем десятки или сотни, мы, например, говорим, что 700 + 200 - это 7 сотен + 2 сотни и снова практически складываем 7 и 2, а потом уж возвращаемся к сотням. Если же для начала сказать ребенку, что сотня - это вагончик с десятками и предложить складывать сотни как вагончики (это тоже мнемонический прием), то возможно ему так считать покажется намного легче.
Каникулы тоже придется использовать. Ребенок с плохой памятью за лето все безнадежно забывает, поэтому лучше не бросать занятия полностью. Я со своими детьми занимаюсь 3-4 дня в неделю по часу-полтора. Кроме этого мы читаем с ними вслух по очереди. Но это все не в наказание, а в удовольствие.