I run XP home, and have a little programme called "Labels Unlimited v2.0", as it's name implies, it is a label maker and can also make business cards. Unfortunately though, the people who produced it said they had withdrawn it from sale as apparently there were some unreconcilable bugs with Windows XP, I've never had any problems with it, and since it's made for Windows XP, it might be worth while browsing the various site and see if you can get a copy of it.
I did try the label maker built into Word, and there is indeed a way around the problem you describe, the only trouble is that it tends to be more than a little finicky, as you have to make seperate text frames, 1 to each card, and then get them placed correctly on the page!
There is another label programme on sale for Avery Labels, I don't know how verstaile it is, but I do know that on mine you set the label measurements (or business cards in your case), the number of repeats across the sheet and number of repeats down the sheet. All you have to do then is fill in the information on the one, and you get the lot printed (correctly) for you.
I am trying to print business cards on Burlington business card stock, using Words built in program. When I print a sheet of ten, two come out centered properly and the rest are way off. Is it required to use a publishing program to set these up properly?