I think it is problematic nevertheless: the fact that we need to revise old SRFIs to make them work shows that there is a problem with compositionality of the solution.

I think this is not a problem of the SRFIs. Any SRFI may build upon another one. E.g., by saying: "This SRFI extends SRFI 26 as follows ...".

It may be a problem of the implementation, though, because you cannot simply import the macros of SRFI 26 and add a few features programmatically. You'll have to rewrite the macro. But a future SRFI may contain a solution to make such a composition of macros directly possible.
It could also be tempting to allow the use cases such as (is (square _) < 2),
but since it is non-trivial, I believe it would better be handled with lambda.
You can implement things like these using SRFI 139, syntax parameters. (You would have to replace _ with something looking like a macro call, e.g. (x), though.)

This would make things like (is (square (x)) < (z) < (y)) possible, which would be standing for something like (lambda args (< (square (first args)) (third args) (second args)).