Userland implementations are never as performant as native implementations. That's the whole point of trying to add immutability to the standard.
even when performance might not be an issue or an objective, there are other concerns about an user land implementation: lack of syntax is a bummer, and lack of support in the ecosystem is the other giant one - for example, can I use this as props for a React component?