“What program or programs are recommended for captioning digital photos? I want to be able to choose the location of the caption, the font, and the colour of the text.”
Most photo editing packages allow you to add text to your images. I seldom add captions to photos (and SmugMug automatically watermarks my uploaded images for me there), but when I do I usually just add a text layer in Adobe Photoshop. I just checked Photoshop Elements 6, and it supports text layers as well. Just click on the “T” in the toolbar, click on the image,and it will create the layer for you.
Many companies have downloadable trial versions online. For example, you can download Adobe Photoshop Elements 6 here and see if it meets your needs.