DependsOn and composites get a little weird. That’s especially true when you’re non-deterministic, as when using variables for resource names. Composites can be a wee bit delicate in some ways.
You could enable a trace, and then check the Debug logs for DSC on the node. That’d give you more detail about what’s happening and when it’s happening.
In my experience, DependsOn really do care if a required resource complete successfully. In one of our configuration, SQL didn’t even tr to install because one of it’s dependency had an error while installing.
@Syl you might be correct what I’m thinking then is, when DSC does a run it will only stop if a specific resource’s “Set-TargetResource” throws an error. It doesn’t do a “Test-TargetResource” directly after it has completed a “Set-TargetResource”
I’ll try and do a bit more investigation into this today.