Specifying a HOSTNAMESNI using cert-manager

Hello Guys,

I am working on a demo using IngressRouteTCP. I have created this ingressroute:

apiVersion: traefik.containo.us/v1alpha1
kind: IngressRouteTCP
metadata:
  name: ingressroute-traefik
  namespace: ic-traefik-tls
spec:
  entryPoints:
    - web
    - websecure
  routes:
  - match: HostSNI(`kareem.traefik-clouddev2.com`)
    services:
    - name: nodejs-service
      port: 7070
  tls:
    secretName: traefik-certificate

I also used cert-managet to generate the secret for the domain using:

---
apiVersion: cert-manager.io/v1
kind: ClusterIssuer
metadata:
  name: selfsigned
  namespace: ic-traefik-tls
spec:
  selfSigned: {}
---
apiVersion: cert-manager.io/v1
kind: Certificate
metadata:
  name: traefik-certificate
  namespace: ic-traefik-tls
spec:
  dnsNames:
    - kareem.traefik-clouddev2.com
  secretName: secret-tls
  issuerRef:
    name: selfsigned
    kind: ClusterIssuer

For some reason when trying to connect on this host it doesn't connect and when I change the HOSTSNI to * and remove the TLS option it works fine. Any ideas how to resolve such issue? How can I specify a specific hostname using tls in ingressroutetcp?

I am using traefik helm chart version 9.1.1 and cert-manager helm chart version v1.2.0.

Thanks in advance.