### Apache Airflow version

2.7.1

### What happened

I start a simple pod (one container and that's it) with the KubernetesPodOperator from the cncf.kubernetes provider.

The task in my container fails (exit code non-zero).
The istio sidecar is indeed terminated but the pod itself remain in an `Error` status even if the `on_finish_action` parameter is set at `"delete_pod"` and the pod is never terminated.

It is expected that the pod is fully deleted, istio or not.

I found that there is a difference in treatment [upon deleting the pod](https://github.com/apache/airflow/blob/5b85442fdc19947e125dcb0591bd59a53626a27b/airflow/providers/cncf/kubernetes/operators/pod.py#L824) so it might be some specific case I'm not aware of.

I'll be happy to help either on documentation or fixing this small issue but I would need confirmation on what is the expected behavior.

### What you think should happen instead

I think the `on_finish_action="delete_pod"` should terminate the pod, not let it hanging the `Error` state with both containers stopped.

### How to reproduce

here is the simplest dag on how to reproduce on my end, note that istio is not visible here since managed cluster-wide.

```python3
from airflow import DAG
from airflow.utils.dates import days_ago
from airflow.providers.cncf.kubernetes.operators.kubernetes_pod import (
    KubernetesPodOperator,
)


with DAG(
    dag_id="issue_reproduction",
    schedule_interval=None,
    start_date=days_ago(0),
    is_paused_upon_creation=False,
    max_active_runs=1,
) as dag:
    pod = KubernetesPodOperator(
        task_id="issue_reproduction",
        image="ubuntu",
        cmds=["bash", "-cx"],
        arguments=["exit 1"],
        dag=dag,
        security_context={
            "runAsNonRoot": True,
            "runAsUser": 65534,
            "seccompProfile": {"type": "RuntimeDefault"},
        },
    )
```

### Operating System

local=macos, deployments=k8s

### Versions of Apache Airflow Providers

apache-airflow-providers-cncf-kubernetes==7.5.0
(Didn't see any fix that should change anything between 7.5.0 and 7.6.0 and the code I pointed to has not changed)

### Deployment

Official Apache Airflow Helm Chart

### Deployment details

k8s version: v1.26.3

### Anything else

The issue should be 100% reproductible provided I didn't miss any specifics.

### Are you willing to submit PR?

- [X] Yes I am willing to submit a PR!

### Code of Conduct

- [X] I agree to follow this project's [Code of Conduct](https://github.com/apache/airflow/blob/main/CODE_OF_CONDUCT.md)

if task.has_dag():
        dag = task.dag
    else:
        dag = DAG(dag_id="dag", start_date=pendulum.now())
        dag.add_task(task)
    dag_run = DagRun(
        run_id=DagRun.generate_run_id(DagRunType.MANUAL, DEFAULT_DATE),
        run_type=DagRunType.MANUAL,
        dag_id=dag.dag_id,
    )
    task_instance = TaskInstance(task=task, run_id=dag_run.run_id)
    task_instance.dag_run = dag_run
    if map_index is not None:
        task_instance.map_index = map_index
    if persist_to_db:
        with create_session() as session:
            session.add(DagModel(dag_id=dag.dag_id))
            session.add(dag_run)
            session.add(task_instance)
            session.commit()
    return {
        "dag": dag,
        "ts": DEFAULT_DATE.isoformat(),
        "task": task,
        "ti": task_instance,
        "task_instance": task_instance,
        "run_id": "test",
    }
@pytest.mark.execution_timeout(300)
class TestKubernetesPodOperator: