In my opinion, mental disorders, disadvantaged upbringing, chemical imbalances etc. are not causative agents. In my work with severely disabled people, each individual has certain behaviours that are typified by their condition and to one way of thinking they cannot control their actions. However with a little gentle encouragement and appropriate reasoning, they can mostly come to regain control of themselves. There is nothing definitively causative about the mind. Rather, these factors influence the probability of a certain decision being made.
You can blame the person, because their mental state defines the person. A stroke may change a person’s personality, and they are thereafter treated as a different person by every new acquaintance. I believe that every person is responsible for their actions, no matter what their mental state or background is.
The only reason for blaming or not blaming the person is the way in which consequences are determined. If a person of average sanity and intelligence did some things my clients do, they would be in line for strong punishment. The reason we do not do this to those of less than average sanity is because it is ineffective. Encouragement and support is what works, so that is what we do. They still have a choice, but at times many mental factors combine to make the probability of misbehaviour overwhelming. However for someone of average intelligence, strength of will should be enough to overcome whatever urges and “evil” tendencies they may encounter.