### Is there an existing issue for this?

- [X] I have searched the existing issues

### Current Behavior

Localstack (1.0.2) returns what appears to be an incorrect error response when calling `get-object` against a non-existent bucket:

```
$ awslocal --debug s3api get-object --bucket=not-exists-2341234 --key=doesnt-matter.txt doesnt-matter.txt 2>&1 | grep Error | uniq
b"<?xml version='1.0' encoding='utf-8'?>\n<ErrorResponse><Error><Code>NoSuchBucket</Code><Message>The specified bucket does not exist</Message><Type>Sender</Type></Error><RequestId>3FA3WN14HJTCNKT0TFF6LIKTAUQ0XO3AB7MUCIQAIW8KST6T0BA1</RequestId></ErrorResponse>"
```

```
$ aws --debug s3api get-object --bucket=not-exists-2341234 --key=doesnt-matter.txt doesnt-matter.txt 2>&1 | grep Error | uniq
b'<?xml version="1.0" encoding="UTF-8"?>\n<Error><Code>NoSuchBucket</Code><Message>The specified bucket does not exist</Message><BucketName>not-exists-2341234</BucketName><RequestId>99NA328HYHDQH2VN</RequestId><HostId>Kp5IOfCoHrw8Hvo8VL+f994yByXJGECQ4Fy5eNoY/7MPpMcHz2QygoG23ILrmF1TkiYoR+k2Njg=</HostId></Error>'
```
Pretty-printing the XML makes the difference in behaviour clearer:

```xml
<ErrorResponse>
    <Error>
        <Code>NoSuchBucket</Code>
        <Message>The specified bucket does not exist</Message>
        <Type>Sender</Type>
    </Error>. 
    <RequestId>3FA3WN14HJTCNKT0TFF6LIKTAUQ0XO3AB7MUCIQAIW8KST6T0BA1</RequestId>
</ErrorResponse>
```

vs

```xml
<Error>
    <Code>NoSuchBucket</Code>
    <Message>The specified bucket does not exist</Message>
    <BucketName>not-exists-2341234</BucketName>
    <RequestId>99NA328HYHDQH2VN</RequestId>. 
    <HostId>Kp5IOfCoHrw8Hvo8VL+f994yByXJGECQ4Fy5eNoY/7MPpMcHz2QygoG23ILrmF1TkiYoR+k2Njg=</HostId>
</Error>
```

I've also observed the same behaviour when calling the `get-object` API from the Rust SDK.

The problem does not appear prior to version `1.0.0`.

### Expected Behavior

The returned error should have the format described in the spec:

https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html

### 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 -p 4566:4566 localstack/localstack:1.0.2

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

    awslocal --debug s3api get-object --bucket=not-exists-2341234 --key=doesnt-matter.txt doesnt-matter.txt 2>&1 | grep Error | uniq


### Environment

```markdown
- OS: OSX
- LocalStack: 1.0.2
```


### Anything else?

The same behaviour is observed on `1.0.0`. Reverting to `0.14.5` we see:

```xml
<Error>
    <Code>NoSuchBucket</Code>
    <Message>The specified bucket does not exist</Message>
    <BucketName></BucketName>
    <RequestID>7a62c49f-347e-4fc4-9331-6e8eEXAMPLE</RequestID>
</Error>
```

which is the correct behaviour.
self,
        parameters: dict,
        response: HttpResponse,
        shape: Optional[Shape],
        shape_members: dict,
        operation_model: OperationModel,
    ) -> None:
        """
        Serializes the given payload.
        :param parameters: The user input params
        :param response: The final serialized HttpResponse
        :param shape: Describes the expected output shape (can be None in case of an "empty" response)
        :param shape_members: The members of the output struct shape
        ed here
        :return: None - the given `serialized` dict is modified
        """
        if shape is None:
            return
        payload_member = shape.serialization.get("payload")
        if payload_member is not None and shape_members[payload_member].type_name in [
            "blob",
            "string",
        ]:
            # If it's streaming, then the body is just the value of the payload.
            body_payload = parameters.get(payload_member, b"")
            body_payload = self._encode_payload(body_payload)
            response.set_response(body_payload)
        elif payload_member is not None:
            # If there's a payload member, we serialized that member to the body.
            body_params = parameters.get(payload_member)