Hi TrtnJohn,
Unfortunately this is an example of an aphorism I use all too often:
When everyone's responsible; No one is responsible.
Each project should have a designated Designer/Architect who can
actually do the job.
From everyone's observations, some people aren't cut out to be designers (look at software all around you).
Too often, designers and architects seem to use the maxim:
"In titulo, ergo sum" (with apologies to Rene)
"I am thus entitled, therefore I must be..."
My job title says Architect, therefore I must be an Architect.
In your case, some of your team members aren't cut out to be designers - by your own admission. So stop trying to get them to do things they can't do. It has precious little to do with their C background.
They just don't get it. As you implied, it's a paradigm shift. The hardest thing of all to accomplish.
Architects and Designers (and I now distinguish between the two) are typically those who are those things "to their bones".
Agile development talks about multi-skilling and amorphous roles - which is fine, if you can actually fulfil those roles and have those skills. But...
My AU$00.02
Paolo