Again, grapheme breaking is a runtime concept. In other words, what counts as an extended grapheme cluster is intended to be the same for all Swift programs running on the same system regardless of where and when they’re compiled.
The compiler cannot have the final word on this, so linking ICU may change the best-effort heuristic employed statically but won’t make it anything other than a heuristic. As the code comment deleted in your PR makes clear, it’s unclear how much effort is worthwhile to put into such a heuristic, but I’d imagine that linking ICU is certainly too far.