Why use Windows NLB instead of Haproxy or Nginx?

I am a junior system administrator and I do my internship. I was responsible for configuring a cluster of high availability websites with two IIS servers and a load balancer.

I was looking for "high availability IIS" in Google, but I just do not understand why each result relates to the use of the integrated NLB functionality of Windows Server. Why are not Haproxy or Nginx such a good option for balancing the load? Are there any fundamental differences between Haproxy and NLB that I missed? Why "wasting" a licensed Windows server only for the NLB feature?