Полагаю, что-то не так с вашим png-файлом. Следующий код:
QToolButton button;
button.setIcon(QIcon("E:/delete.png"));
button.setIconSize(QSize(256, 256));
button.show();
отлично работает для меня (конечно, E: /delete.png имеет прозрачный фон).
Убедитесь, что вы сохраняете прозрачность для вашего PNG.