The changes in the behavior are related to this commit - Fix issue when creating instances from a gltf object (#15724) 路 BabylonJS/Babylon.js@a630bbd 路 GitHub
More info here - CreateInstance now parent the instance to the same parent as the source (this is the breaking change).
In your example this breaking change leads to the situation when all duck鈥檚 instances are just inside the duck
Hope it helps