depends-list.sh fails in two ways: one is a simple quoting bug (which would have been detected by shellcheck) which causes empty FLAVOR variables to be propagated; the other is that de-duplication is being done without regard for flavors.
The upshot of these is that where a port depends on a specific flavor (first bug) or on multiple flavors (second bug, usually caused by build dependencies) of another port, the constructed dependency list is incomplete, and so -recursive targets do not do all the required work. (This is especially annoying for fetch-recursive.)
See also https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=269982 on this exact issue which has been open for three months without attention; this diff addresses both the original bug and my followup comment.