Excellently done! The only thing I could think of that would make it better would be to add ground effects. This game assumes frictionless surfaces, so the collisions and ball paths are fairly easy to plan for after a while. Perhaps adding wind or a slope of some kind would decrease the predictability of the game.