The load is balanced based on session count. What it is doing is correct.
If you want to "balance" the load more sensibly, I would suggest you manually partition the load using services, such that certain types of processes are directed preferentially at one node. See:http://www.oracle-base.com/articles/10g ... es-10g.php
Note. Even if evenly specced nodes, I've never seen a successful RAC implementation that has not in some way partitioned the workload using services. Not only will this protect your weaker node, but it willl reduce interconnect traffic!