Well, sure, the list code comes from Apple and has had serious bugs (and limitations in the design being extremely basic, like you point out) since its introduction in 2004-ish. We’ve filed countless many issues to them ourselves. Very little gets fixed with it though (and far less in recent years).
But, as demonstrated with this bug in particular, it is possible to do things around, or on top of, lists that make them even more fragile. So the best we can often do is just make sure we have swept as much interference away from around it (same goes for the spell check engine, which is another mess these days, tables, and so on).