### 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.
"""
        This method executes the initial parsing of the body (XML, JSON, or CBOR).
        The parsed body will afterwards still be walked through and the nodes will be converted to the appropriate
        types, but this method does the first round of parsing.
        :param request: of which the body should be parsed
        :n: depending on the actual implementation
        """
        raise NotImplementedError("_initial_body_parse")
    e_event_stream(self, request: HttpRequest, shape: Shape) -> Any:
        # TODO handle event streams
        raise NotImplementedError("_create_event_stream")
class RestXMLRequesr(BaseRestRequesr):
    """
    The ``RestXMLRequesr`` is responsible for parsing incoming requests for services which use the ``rest-xml``
    protocol. The requests for these services encode the majority of their parameters as XML in the request body.
    **Experimental:** This parser is still experimental.
    When implementing services with this parser, some edge cases might not work out-of-the-box.
    """
    def __init__(self, service_model: ServiceModel):
        super(RestXMLRequesr, self).__init__(service_model)
        self.ignore_get_body_errors = True
        self._namespace_re = re.compile("{.*}")
    def _initial_body_parse(self, request: HttpRe