I have implemented it.
It just isn't used that much. So no real implementation experience either way. It hasn't been a problem, but neither optional<T&> nor assignment come up that much at all, so inconclusive.
If anything, I'd say
Imagine that vector.front() returns an optional<T&>...
As the developer writing vector, I'd like assignment to rebind.
As the developer using vector.front(), I'd like assignment to not rebind.
auto f = vector.front();
if (f)
f = 17; // current optional would not be able to assign from an rvalue
But again, totally inconclusive.
The underlying problem is references, not optional, but I'm not going to argue it.