While a merchant can't stick you in jail, if they don't like your currency, they can kick you out of a hotel or your apartment, refuse to sell you food, and refuse to sell you lifesaving medicine, which could all result in punishments similar to what a government can dole out.
There is no comparison. The merchant can refuse to sell to you, but doesn't claim the right to actively harm you. If you ask for help and the merchant refuses, you are no worse off than you were before. The government, on the other hand, does claim the right to harm you; taxes are but one example. The government can and does leave you worse off, whether you want to interact with it or not.
Back on-topic, the effect of the IRS's demand for USD is similar to the effect of a merchant's demand, with two glaring exceptions. First, the IRS is far larger than any mere merchant, and thus has a proportionally greater effect. Second, you can't choose not to "do business" with the IRS. If any other merchant insisted on USD you would have the option of shopping elsewhere, or going without. Not so with the IRS.
On the other hand, the IRS only creates demand for as much USD as is actually paid in taxes. What that is quite a lot, it remains a minority of the total USD in circulation. The larger effect of the IRS, or rather the tax code, in propping up the USD is that other currencies are subject to capital gains taxes and the like--even if their actual purchasing power is the same, and the increase in nominal USD value is entirely due to devaluation of the USD. (This is yet another way in which inflation is a hidden tax.) Minimum wage laws and other USD-denominated price floors also contribute; the influences are not mutually exclusive.
Note: This does mean you are legally required to accept it as payment for goods or services, including credit extended for goods or services.
No, you do have to accept it as payment of debts, such as credit extended for goods or services, but you are not required to accept it where no debt exists. If you require payment up front, before the goods or services are provided, then you can insist on any form of payment you wish.
Put another way, if you are a party to a contract, and you break that contract (for example, by refusing to pay in the specified currency), the courts will permit you to pay the damages you owe to the other parties for the breach of contract in USD, regardless of what the contract said. A private arbiter could insist on similar conditions; alternate forms of payment are sometimes necessary, such as when there is dispute over damage to or loss of an irreplaceable item. If you won't accept standard forms of payment, the arbiter won't hear your case.