### Is there an existing issue for this?

- [X] I have searched the existing issues

### Current Behavior

1. Create kinesis stream with `awslocal kinesis create-stream`
2. Create two firehose delivery stream with `awslocal firehose create-delivery-stream`, both of which have `--kinesis-stream-source-configuration` to the stream created above
3. Put record to the stream
4. Only one of the delivery stream receives the message

### Expected Behavior

At the 4th step, both of the delivery stream should receive the message.
(which was true in real AWS environment.)

### How are you starting LocalStack?

With a `docker run` command

### Steps To Reproduce

#### How are you starting localstack (e.g., `bin/localstack` command, arguments, or `docker-compose.yml`)

    docker run localstack/localstack:2.3.2

#### Client commands (e.g., AWS SDK code snippet, or sequence of "awslocal" commands)

    docker exec -it admiring_chatelet bash
    (in the localstack container)
    awslocal opensearch create-domain --domain-name my-domain
    awslocal kinesis create-stream --stream-name samplestream --shard-count 2 --region dummy
    awslocal firehose create-delivery-stream --delivery-stream-name s1 --delivery-stream-type KinesisStreamAsSource --kinesis-stream-source-configuration "KinesisStreamARN=arn:aws:kinesis:us-east-1:000000000000:stream/samplestream,RoleARN=arn:aws:kinesis:us-east-1:000000000000:role/stream-role" --amazonopensearchservice-destination-configuration "ClusterEndpoint=http://my-domain.us-east-1.opensearch.localhost.localstack.cloud:4566,IndexName=index1,TypeName=_doc,RoleARN=arn:aws:kinesis:us-east-1:000000000000:role/es-role,S3Configuration={RoleARN=arn:aws:iam::000000000000:role/Firehose-Reader-Role,BucketARN=arn:aws:s3:::kinesis-activity-backup-local}"
    awslocal firehose create-delivery-stream --delivery-stream-name s2 --delivery-stream-type KinesisStreamAsSource --kinesis-stream-source-configuration "KinesisStreamARN=arn:aws:kinesis:us-east-1:000000000000:stream/samplestream,RoleARN=arn:aws:kinesis:us-east-1:000000000000:role/stream-role" --amazonopensearchservice-destination-configuration "ClusterEndpoint=http://my-domain.us-east-1.opensearch.localhost.localstack.cloud:4566,IndexName=index2,TypeName=_doc,RoleARN=arn:aws:kinesis:us-east-1:000000000000:role/es-role,S3Configuration={RoleARN=arn:aws:iam::000000000000:role/Firehose-Reader-Role,BucketARN=arn:aws:s3:::kinesis-activity-backup-local}"
    awslocal kinesis put-record --stream-name samplestream --data '{"test":"value"}' --partition-key 1
    curl http://my-domain.us-east-1.opensearch.localhost.localstack.cloud:4566/index1/_search
    curl http://my-domain.us-east-1.opensearch.localhost.localstack.cloud:4566/index2/_search

by the last two `curl`s, only one of the results shows the given data.

### Environment

```markdown
- OS: MacOS 13.2.1
- LocalStack: 2.3.2
```


### Anything else?

_No response_
if "AWS_ACCESS_KEY_ID" in os.environ and "AWS_SECRET_ACCESS_KEY" in os.environ:
        access_key = os.environ.get("AWS_ACCESS_KEY_ID")
        secret_key = os.environ.get("AWS_SECRET_ACCESS_KEY")
        session_token = os.environ.get("AWS_SESSION_TOKEN")
        awsauth = AWS4Auth(access_key, secret_key, region_name, "es", session_token=session_token)
        connection_class = RequestsHttpConnection
        return OpenSearch(
            hosts=[endpoint],
            verify_certs=verify_certs,
            use_ssl=use_ssl,
            connection_class=connection_class,
            http_auth=awsauth,
        )
    return OpenSearch(hosts=[endpoint], verify_certs=verify_certs, use_ssl=use_ssl)
class FirehoseProvider(FirehoseApi):
    
    kinesis_listeners: dict[str, KinesisProcessorThread]
    def __init__(self) -> None:
        super().__init__()
        self.kinesis_listeners = {}
    @staticmethod
    def get_store(account_id: str, region_name: str) -> FirehoseStore:
        return firehose_stores[account_id][region_name]
    def create_delivery_stream(
        self,
        context: RequestContext,
        delivery_stream_name: DeliveryStreamName,
        delivery_stream_type: DeliveryStreamType = None,
        kinesis_stream_source_configuration: KinesisStreamSourceConfiguration = None,
        delivery_stream_encryption_configuration_input: DeliveryStreamEncryptionConfigurationInput = None,