I am not a designer. I don't claim to be, and I don't want to be. I am a programmer.
I have a handful of clients that are small "web designers". Some are great, and I have recommended friends and family to them when they were looking for websites. Some are not so great.
One in particular makes okay looking websites that just have (in terms of usability) bad design. The client pays well. I charge them a little more than the others because working for them usually means getting my hands dirty and doing some "hacking" that I am not always proud of. My work for them includes anything from wiring forms to the occasional quick-and-dirty back end CMS.
My question is: when I see something "wrong" - is it my responsibility (morally, not contractually) to point it out and/or fix it. E.G. I often see form element inconstancies when wiring forms - they may use select menus for selecting the user's state in one area, but then 2 sections down, use a text input for entering the state where the user works.