As luke mentioned, YNP is a huge Park, and driving it eats up a lot of time due to the traffic, cars stopping to look at a bison, etc. With just 3 nights in the Park, I think your time would best be spent doing the entire figure-8 route, and get a complete overview of what Yellowstone is. You could stop at several geyser basins for leg stretching, and eat your packed lunches at shaded roadside picnic areas.
If your first night at the Madison CG begins in the late afternoon, there won't be much time to see anything. If you get set up by early afternoon, there would be time to race up to the Norris Geyser Basin to spend a few hours, which is pretty impressive.
But the middle day affords a bunch of good things. Drive to Old Faithful early in the morning and see the amazing upper geyser basin. Many tourists and a parking hassle, but it is the best collection of thermal features in the Park. Then drive east to West Thumb (it has a fair geyser basin), then along the beautiful west shore of Yellowstone Lake, up to Canyon, where you would turn west back to your camp at Madison. This lower loop of the figure-8 highway system is the best part of the Pack, in my opinion, and it would be a great way to spend a day. Another good thermal area is the mud volcano, which is a collection of funky mud pots and fumeroles. It's on the road between Lake and Canyon. Just north of that is the wonderful Hayden Valley, where you'll get your Bison fix. Just before your get to Canyon, there are the viewpoints of the upper and lower falls (worth checking out). The road between Canyon and Madison doesn't offer too much, other than the Norris geyser basin and the curious Artists Paintpots, and a good look at Gibbon Falls.
Short hikes around Madison/Old Faithful:
1) Drive east to the DeLacy TH and hike the flat trail to Shoshone Lake (~6 miles RT).
2) Easy hike on an abandoned fire road to the Lone Star geyser (~4 miles RT).
Short hikes around Canyon (these 2 could be accessed easily from Madison as well):
1) Cascade Lake, using the trail just north of the main intersection on the Canyon-Tower road. It's a gentle 4 mile RT hike though unburned forest and meadows. The route to the lake from the Canyon-Norris road goes through burned forest.
2) Grebe Lake, 6+ miles RT on a pretty flat trail. It goes through heavily burned forest, but it's quite nice at the lake. It's a good way to check out the effects of the 1988 burn, and how the forest has slowly recovered since. There's pretty decent fishing at the lake.
If you had two consecutive nights at Canyon, I might suggest driving up to Tower Junction and hiking Slough Creek up as far as you wanted to (an in and out hike, as are all that I've mentioned). Maybe eat your lunch at a nice shaded spot, then drive back out and go east to the Lamar valley to check it out--lots of wildlife, mostly bison. Then you will have a long drive back to Canyon. Don't try driving any further east (like to Cooke City), as it would take you forever to get back to Canyon.
Sorry if this all seems a bit confusing. The thing is, you really need to nail down what you want most to get out of your 3-night YNP experience. There are fantastic thermal features, good hiking, great backpacking, fishing, boating, and a large variety wildlife--lots of choices. You will have a great time, no matter how you approach it. I wish you had more time to spend there, as I usually advise people to plan at least 4-6 days to see the Park.