Da ich hier Linux laufen habe, kann ich mit deinem Programm nichts anfangen...
Vielleicht wäre es nützlich, wenn du deinen OpenGL-Code postest. Sowohl die Einstellungen was das Blending angeht (glEnable) und den eigentlichen Rendercode..
Davon abgesehen, wenn es dir nur darum geht, Teile einer Textur transparent darzustellen brauchst du kein kompliziertes Blending..
Dafür gibt es den Alpha-Test. Du musst dann natürlich nur eine Textur mit Alpha-kanal laden, dann funktioniert das ganze. Blending wird benutzt, wenn du mehrere Texturen miteinander vermischen willst, um zB Überläufe oder Lightmaps darzustellen.
Edit:
So hab gesehn, das auch der Quellcode im Packet war, hab mal einen Blick darauf geworfen. Ich weiß ehrlich gesagt nicht genau, wann die Vertex-Informationen in den Framebuffer geschrieben (direkt, oder erst bei glEnd) werden, aber beim Blending spielt die Reihnfolge eine wichtige Rolle. Geblendet wird immer die Informationen, die du in den Framebuffer schreiben willst, zusammen mit der Information, die bereits im Framebuffer steht.
Beim ersten Quad, wird die Textur mit einem quasi leeren Framebuffer geblendet, was den gewünschten Effekt bringt. Das zweite Quad blendet mit der Textur des ersten, die in dem Fall identisch sind. Da die Textur keinen Alpha-Wert besitzt hat die Blendingeinstellung, in dem Fall keine Auswirkung und es wird nur komplett die Texturinformation benutzt, was logischerweise zu keiner Transparenz führt. (Da mögen kleinere Fehler in der Erklärung sein, habe noch nicht wirklich Erfahrung mim Blending, aber das scheint mir die logischste Erklärung zu sein, bzw. ich bin überzeugt, das es an der Reinfolge liegt.)
Wie gesagt, für das was du möchtest ist der Alphatest viel nützlicher. Vernünftige Formate sind PNG oder besser TGA (gibt mehr Loader dafür). Ich würde sowieso gucken, daß du dir einen neueren Loader besorgst, bzw. selbst schreibst, glaux ist ein wenig veraltet.
Ich persönlich bin mit SDL und SDL_Image sehr zufrieden. (www.libsdl.org)