It is not shocking, it is just reality. Most design patterns are used in framework/product development which have to be general and flexible enough to cover multiple use cases. Many developers('Professionals') do just 'business' and less framework development and even more developers do maintainance. So there is no surprise if 'professionals' can not apply design patterns - they just never needed them (or they needed them once in 3 years). And being developer ist very versatile job, applying design patters is only one small part of it. Some are good at design patterns, some at requirement analysis, some at documenting stuff or testing or mediating conflict in the team or at refactoring old code or or or.... My main point is that creating software is very multisided process and there can be 'professionals' without being professional at design patterns.
I can agree that creating a software system requires different skills but I was focusing on the pure code writing.
When you say that many developers just do "business", it seems that you think that business code (i.e. your application domain) is a huge set of "do_this", "do_that", without the need for abstraction/architecture (in broad sense, not only software).
More, design patterns are not for frameworks, they solve common problems in an effective (and really working) way.
You can have the need of singleton, adapter, decorator etc even in business code.
Anyway, my reference to design pattern was just an example of the minimal "tools" any developer should have in his/her head.
IMHO, O-O developers without O-O analysis/design skill produce disaster.