### Is there an existing issue for this?

- [X] I have searched the existing issues

### Current Behavior

When I m defining a queue with 30s delay (DelaySeconds)
After sending message ApproximateNumberOfMessagesDelayed is still at 0

### Expected Behavior

Define a queue with 30s delay 
Send a message 
Verify value of ApproximateNumberOfMessagesDelayed in the queue, expected value should be 1.
This is working with release 0.14.2

### How are you starting LocalStack?

With a docker-compose file

### Steps To Reproduce

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

    docker run localstack/localstack:latest

#### Client commands (e.g., AWS SDK code snippet, or sequence of "awslocal" commands)
`
awslocal sqs create-queue  --queue-name test --attributes '{"DelaySeconds":"30","MessageRetentionPeriod":"86400","ReceiveMessageWaitTimeSeconds":"0","VisibilityTimeout":"0"}'

 awslocal sqs get-queue-attributes --attribute-names All  --queue-url http://localhost:4566/000000000000/test
 awslocal sqs send-message --queue-url http://localhost:4566/000000000000/test --message-body 'test'
 awslocal sqs get-queue-attributes --attribute-names All  --queue-url http://localhost:4566/000000000000/test
`

### Environment

```markdown
- OS:Ubuntu
- LocalStack:latest or 0.14.4
```


### Anything else?

_No response_
result_send = sqs_client.send_message(QueueUrl=queue_url, MessageBody="test")
        result_recv1_messages = sqs_client.receive_message(QueueUrl=queue_url).get("Messages")
        result_recv2_messages = sqs_client.receive_message(QueueUrl=queue_url).get("Messages")
        # on
        assert (result_recv1_messages is None) != (result_recv2_messages is None)
        assert poll_condition(
            lambda: "Messages" in sqs_client.receive_message(QueueUrl=dl_queue_url), 5.0, 1.0
        )
        assert (
            sqs_client.receive_message(QueueUrl=dl_queue_url)["Messages"][0]["MessageId"]
            == result_send["MessageId"]
        )
    def test_dead_letter_queue_chain(self, sqs_client, sqs_create_queue):
        # te
        # cr
        queue_names = [f"q-{short_uid()}", f"q-{short_uid()}", f"q-{short_uid()}"]
        for queue_name in queue_names:
            sqs_create_queue(QueueName=queue_name, Attributes={"VisibilityTimeout": "0"})
        queue_urls = [aws_stack.get_sqs_queue_url(queue_name) for queue_name in queue_names]
        # se
        for idx, queue_name in enumerate(queue_names[:2]):
            policy = {
                "deadLetterTargetArn": aws_stack.sqs_queue_arn(queue_names[idx + 1]),
                "maxReceiveCount": 1,
            }
            sqs_client.set_queue_attributes(
                QueueUrl=queue_urls[idx],
                Attributes={"RedrivePolicy": json.dumps(policy), "VisibilityTimeout": "0"},
            )
        def _retry_receive(q_url):