Write-up is highly Windows-centric (though not irrelevant elsewhere).
One thing that is regretfully ignored in discussions of async, tasks, green threads, etc. is that there is no support/consideration for native (reliable/efficient) thread-local variables. If you're lucky you'll get a warning about "don't use them".
That still doesn't explain why duck typing is ever a thing beyond "I'm too lazy to write
extends BaseClass
". There's simply no reason to want it.