I'm making pool game like game. This game requires correct (or very accurate) reflective bounces. I tried Box2D and Bullet Physics, but they have this problem.

If there is a wall on top of this image, red line is regular course of the regular pool game. But the engines often shows green line course. Especially,
- This happens after a ball moving slowly hits the wall.
- Sometimes a ball moving fast get slower suddenly.
I'm finding a physics engine can simulate pool game as much as possible without these problems. Can you recommend some? I'm digging Newton Game Dynamics now, but I have no sure about this. I'm considering PhysX as next trial, and have to make my own if nothing be found. But it's obvious it'll take huge time, so I wish I will do not. I'll be very appreciated if you save my time. And of course, solution with Box2D / Bullet Physics are also welcomed!
Acceptable languages/platform are C/C++/Objective+C on iOS.
I attach my configuration with Box2D.
Walls
- static box shape
- linear/angular damping = 0.1
- restitution = 1.0
- friction = 100
- density = 10
- bullet = false
- fixed rotation = false
- inertial scale = 1.0
Balls
- dynamic sphere shape
- linear/angular damping = 0.1
- restitution = 1.0
- friction = 100
- density = 20
- bullet = true
- fixed rotation = false
- inertial scale = 1.0