Ja, die Erklärung ist einfach. Daran Schult ist die "alte"
API bei der fest gelegt wurde das
die Standardgrösse eines Icons 32x32 beträgt. (so zusagen)
Ohne selbst das Zeichnen in die Hand zu nehmen wirds nix.
Lade das Icon mit
LoadImage() und zeichne es im WM_PAINT mit
DrawIconEx().
Hier eine Demonstration: