Having the body shop scan the paint is actually better than getting the paint code. The paint will have faded due to the environmental effects of where it has been stored / driven. That includes rain, sun, chemicals, etc. Using fresh paint, the color of the paint code will undoubtedly not match the rest of the car.
My experience with scanners matching the color has been excellent.
Cheers,