H-4 is obviously better because B is designed for temporary stays and if you're married, CBP will be expecting you to be H-4, not B. Generally speaking anything permissible under B is allowed under H-4 or TD but this is a bit subjective. FWIW:
http://www.grasmick.com/business.htm If you're not working under something specifically enumerated as permissible under B you're going to have problems because you'd be relying on the "incidental" work bit (if that's what it is, I'm not up-to-date on the case law) and your lawyer is familiar with it but that's not to say the CBP person you deal with will be. So you're using essentially two legally esoteric provisions together if you're on H-4 but theoretically it is possible.
I don't think that's your problem though, I think the problem is the tax situation. Your employer from the sounds of it doesn't have a US payroll. You can pay
taxes in the US by getting an ITIN by filing a W-7, but if you earn over $10,000 while in the US and are directly employed by a Canadian employer you have to be on a US payroll and get a W-2. The usual way around it is to be self-employed and then you do the FICA/income tax withholding yourself, but as soon as you do that your employer is no longer in Canada, it's yourself and thus the limited exemptions allowed under B status no longer apply.
This is explained (in reverse) in this publication:
http://www.irs.gov/pub/irs-pdf/p597.pdf on page 2.
Forgetting for the moment what CBP, the IRS, CRA, lawyers, etc. think about it, the basic point I think to bear in mind is that the whole set up for working in the US without a specific work authorization is designed for incidental or short-term work.
Generally speaking people on B are supposed to renew status on I-539 every six months, with Canadians it's more vague because it's based on "duration of stay", i.e. what your intent is based on how long you've stayed, the six months thing is more of a rule of thumb that CBP use. However if you get to the point of filing an I-539 it's not clear on what your claim to the renewal would be, because you're married to someone on H-1B and that would normally be H-4.
Steve.