I urge you to learn to program them yourself. Once you do it, it is quite easy. Since you are posting here, I presume you have a computer, and odds are that it is a Windows PC, and might have a serial port. I also presume that you have the serial programming cable that comes with the scanner. Is this true so far?
If so, then the next issue is software. There is absolutely no need to buy software. There are two good free packages to program these scanners; FreeScan (which I prefer and use) and another that I cannot recall the name. So, you would find FreeScan by googling 'freescan scannow', it should be the first link. Go to the download area, download and install it.
The next thing you really need is a paid subscription to RadioReference. This is cheap and gives you several advantages, including allowing FreeScan the ability to download county frequencies from RadioReference. This is really mandatory for trunked systems. For analog frequencies you could manually enter into FreeScan from a free radioreference printout. Your choice.
Lastly, it is curious that you say that the BCD396XT is an old scanner since it is the latest and greatest handheld from Uniden. It has only been out for 11 months. If your scanner is old, then it is likely a BCD396T, BC296D, or BC250D. If you have any of those three, you will have problems with motorboating on digital trunking systems and should perhaps trade up to a BCD396XT.
When it comes to the BCD996XT, it may not be worth the extra money it will cost unless you really need the features which make it useful when mobile, such as multi-site and GPS. If you will only use it as a base or for your local area, it will be much cheaper to get a BCD996T used on Ebay and get rid of motorboating by applying the latest firmware update. I've seen some go for as cheap as $300 but it could take months to find one as they usually sell for $350 to $450.