### Is there an existing issue for this?

- [X] I have searched the existing issues

### Current Behavior

PutMetricData with arrays of values does not work properly. Zero values seem to be published. PutMetricData with a single value works as expected. This happens to both CLI and SDK.

### Expected Behavior

PutMetricData with arrays of values should work as publishing a single value.

### 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:1.2.0

#### Client commands (e.g., AWS SDK code snippet, or sequence of "awslocal" commands)
```
awslocal cloudwatch put-metric-data --namespace test --metric-data MetricName=TestCounter,Values=10,1,Counts=1,1
awslocal cloudwatch get-metric-statistics --namespace test --metric-name TestCounter --statistics Maximum --period 60 --start-time 2022-11-9T00:00:00Z --end-time 2022-11-11T00:00:00Z
{
    "Label": "TestCounter",
    "Datapoints": [
        {
            "Timestamp": "2022-11-09T23:25:10+00:00",
            "Maximum": 0.0,
            "ExtendedStatistics": {}
        },
        {
            "Timestamp": "2022-11-09T23:27:10+00:00",
            "Maximum": 0.0,
            "ExtendedStatistics": {}
        }
    ]
}
```



### Environment

```markdown
- OS: Mac Monterey
- LocalStack: 1.2.0
```


### Anything else?

_No response_
snapshot.add_transformer(snapshot.transform.cloudwatch_api())
        sqs_url = sqs_create_queue()
        sqs_arn = sqs_client.get_queue_attributes(QueueUrl=sqs_url, AttributeNames=["QueueArn"])[
            "Attributes"
        ]["QueueArn"]
        queue_name = arns.sqs_queue_name(sqs_arn)
        
        sqs_client.receive_message(QueueUrl=sqs_url)
        sqs_client.send_message(QueueUrl=sqs_url, MessageBody="Hello")
        dimensions = [{"Name": "QueueName", "Value": queue_name}]
        metric_default = {
            "MetricStat": {
                "Metric": {
                    "Namespace": "AWS/SQS",
                    "Dimensions": dimensions,
                },
                "Period": 60,
                "Stat": "Sum",
            },
        }
        sent = {"Id": "sent"}
        sent.update(copy.deepcopy(metric_default))
        sent["MetricStat"]["Metric"]["MetricName"] = "NumberOfMessagesSent"
        sent_size = {"Id": "sent_size"}
        sent_size.update(copy.deepcopy(metric_default))
        sent_size["MetricStat"]["Metric"]["MetricName"] = "SentMessageSize"
        empty = {"Id": "empty_receives"}
        empty.update(copy.deepcopy(metric_default))
        empty["MetricStat"]["Metric"]["MetricName"] = "NumberOfEmptyReceives"
        def contains_sent_messages_metrics() -> int: