Have you checked your hydrometer? If it reads 1.004 in water at the hydrometer calibration temperature (usually 60 F), you will have to subtract 0.004 from all readings.
If it reads 0.996, you will have to add 0.004 to all readings.
As trevorc13 asked, did you enter your efficiency? If you didn't then the program cannot accurately calculate the contribution from the grains.
No computer program that I am aware of can accurately calculate the FG. There are too many variables to be taken into account. My FG's are almost always lower than those predicted by Beersmith.
Do you apply temperature compensation to your hydrometer readings? A gravity reading of 1.050 at 75F would give a true gravity of 1.052 if the hydrometer was graduated at 60F.
Finally, how sure are you that you have the right amount of wort? If you are going by the markings on a bucket, they are often wrong. Mine is off by 6% which would give a 6% error in the OG reading if I used the bucket to determine the volume.
-a.