Hi, You will get load balance once the IGP cost to reach the upstream PE's loopback is equal (in case you're using LDP or non explicit RSVP, and in case you hadn't modified other higher priority BGP attributes)
You can use two Route Reflectors in your MPLS backbone. On the first, you do the normal. On the second, you configure a feature called diverse-path which will force the RR to advertise the "second" best path. This way the far end PE router will receive both paths with the same RD. Read up on this feature, pretty neat when you are talking about BGP fast convergence. I would still prefer to use different RDs and iBGP multi-path.
You might also run into problems getting this second path if you played with BGP attributes. If you advertise a route on CE-1 to PE-1 with a Med of 100 and the same route is advertised on CE-2 to PE-2 with a Med of 200, the backbone will only have one route. PE-2 will see both paths, one from it's eBGP peer (CE-2) with a Med of 200, and the same path learned from the iBGP RR's with Med of 100. This Med 100 route is better and PE-2 prefers the backbone route. This causes him not to advertise anything to the RR's (not until the primary route is lost). To overcome this, you can configure advertise best-external on the PER.
Lots of neat things that happen, but you can see how complicated it can get when you use the same RDs. This is why I like to keep things simple, but then again, there are lots of things I don't yet know about MPLS design. I'm sure someone can probably give a good reason to use the same RD, but I haven't found one yet.