This is a tricky thing to do, I think. I don't really have a solution since it would require a decent bit of tinkering with trial and error but the first thing I did think about was the need for a Spherecast rather than a Raycast.
Raycasts have no width but the balls are going to collide at the tanget point rather than the center, where the raycast is going... So it will make all of the reflected vectors incorrect in terms of the actual physics results. Plus, all of the other factors like friction, rotational torque, cushion flexibility etc are all not going to be accounted for so the reflections might be close, but not accurate.