Yes, this is a major challenge with using Flash UI - the Stroke Filter sample really just provides a suggestion of how you might work around this limitation. I wasn't aware that this also affected Cocoa (I'm very new to Cocoa development and still learning) - you might find this link useful if you're running into this problem: http://marc-abramowitz.com/archives/2010/06/09/the-quest-for-a-better-uialertview/
But yes, I agree that the real issue is that the architecture isn't designed for these sorts of UI frameworks. For now I would try and use workarounds like the one above, or tailor solutions to the specific problem (like Stroke Filter is attempting to do).
Hope that helps,
Its probably worth noting that Filters are kind of deprecated now aren't they? We used to implement at lof our stuff as filters (even thought they prbobably shouldn't have been) and we've migrated them away from that model. When we did use them though, we used Qt, which acted very similar to the ADM in this regard so there wasn't a problem (other 3rd party toolkits would also work).
For example the Cocoa [NSApp runModalForWindow] method returns imediately, not when the dialog is dismissed.
Sorry for writing this. It is wrong!