The use cases for Istio/Envoy or any other Service Mesh is that they comprise a set of far higher-level capabilities. Routing Policy Enforcement, mTLS, Circuit Breakers, Certificate Management, Traffic Tracing and Visualization, and many many more features [0][1].
I love me some HAProxy too, but it only operates at the level of a single service/backend group or lists of relatively independent services/backend groups. Services Meshes intend to make deploying dozens, hundreds, thousands of complex services in cohesive and consistent fashions such that they form one or more applications or APIs.
[0] https://docs.openshift.com/container-platform/4.5/service_me...