Thank you for your help!
The mistake has been fixed with new method -- to calculate direction for refracted ray (using vector analysis instead change angle directly).

Please download the latest jar and try it again. Please let me know if you find more problems.