Callers can mutate the object's internals without permission.
Encapsulation is not only about single fields. If a cart exposes its mutable items list directly, outside code can change the cart's state without going through the cart's rules.
Additional Notes
Why is returning a raw internal collection dangerous?