Как избавиться от мерцания при анимации в Qt?
Делайте двойную буферизацию. Ваш виджет будет каждый раз перерисовываться при перемещении. Можете это проверить: добавьте вызов функции qDebug()<<__FUNCTION__ в onPaint и посмотрите в отладчик. 
www.informit.com/articles/article.aspx?p=1405227&s...
Это похоже на баг Qt, попробуйте другую версию.