I know that in some Canadian cities, US dollars are accepted pretty freely, but this is my first visit to Winnipeg; I expect to be using a credit card for almost everything, but may need cash for taxi fare, snacks, etc. Can I get by with USD?
I've lived in Calgary and Toronto, so I can speak generally about Canada. In larger cities (i.e. Toronto, Montreal, Vancouver), USD is sometimes acceptable at shops near the airport or in tourist areas, although you won't get a good rate. In cities like Winnipeg, Calgary, Edmonton, don't expect that USD will be acceptable anywhere but at the airport.
Your best bet would be to convert some of your money to CAD while in Winnipeg.
As someone living in Vancouver - pretty much ON the border, I've yet to see anywhere other than a hostel that would accept American money. Other than that, and VERY tourist-oriented locations like Niagara Falls, in basically ANY location in Canada, you'll be wanting Canadian dollars.
Assuming you are coming from the US, you will find places that you expect to take credit cards, such as convenience stories, do not. They take debit cards, but you probably don't have one. They are also unlikely to take US cash. Taxis will be fine, though I always ask as I get in "credit card ok?" to be on the safe side.
There are ATMs everywhere: the ones attached to banks will probably charge a smaller service charge than the "white label" ones in convenience stores, hotel lobbies, etc. You should be just fine getting some Canadian cash ($20 or $40) on arrival, and depending on your shopping habits you could do that in the airport, or when you get to your hotel you could ask where the nearest ATM is and go get some after you're checked in.