As I posted before, the part I was most worried about was how to do the actual tacking of the nails. Katie had a great suggestion for me - use flexible tacking strip instead. Flexgrip, also known as curvease or ply-grip, is a flexible strip with little metal teeth that grip onto the fabric. It makes finishing edges and working around curves very easy. I found mine at the Mississauga Fabricland location which carries upholstery supplies.
With the chair stripped bare, (and this youtube video to guide me) I decided to test drive the flexgrip and see if I could do it myself. I cut a piece the length of the front of the seat. Using the original nail tacks, I nailed the strip, following the curve of the front. You can see I wasn't that precise with this test and some of the metal overhung the edge.
Once the metal was in place, I folded the back of the metal strip forward leaving a 1/4" gap. Then I put the foam back in place and wrapped the old fabric on top. Using a screwdriver, I tucked the edge of the fabric into the gap all along the strip. Finally, I used a rubber mallet to lightly tap the flexgrip down and close the gap.
And tada - here's how the flexgrip test turned out:
Not bad :) For the real thing, I'll have to install the flexgrip back from the wood edge and bring the foam and fabric forward so that I get a nice curved cushion and no metal parts pinching baby bums! We've put a coat of primer on the chair and should have all the paint and reupholstery done in the next few days. The colour we ended up choosing is so yummy I could eat the chair up!