My understanding is that Windows PPPoE client automatically searches for PPPoE services to connect to on all NICs. If you don't set the service name in the PPPoE connection's property tab then the first one found will be the one connected to (assuming user and password authenticate).
Otherwise, ask your ISP(s) for their PPPoE service name(s) and configure the service name in the PPPoE client connection in Windows. In your case, you could create 3 different PPPoE connections, each with a different service name (assuming each ISP has a unique service name).
Theoretically you could be connected to all three simultaneously. As for load balancing, the only practical way of doing this, under Windows, is to analyse your traffic and set up specific routes. Not ideal.