### Is there an existing issue for this?

- [X] I have searched the existing issues

### Current Behavior

Given the following minimal terraform code that creates two s3 buckets where one of the buckets is used for logging

```tf
terraform {
  required_version = ">= 1.5.2"

  required_providers {
    aws = {
      source  = "hashicorp/aws"
      version = "~> 5.8.0"
    }
  }
}

resource "aws_s3_bucket" "bucket" {
  bucket = "main"
}

resource "aws_s3_bucket" "logging" {
  bucket = "logging"
}

resource "aws_s3_bucket_logging" "bucket" {
  bucket = aws_s3_bucket.bucket.id

  target_bucket = aws_s3_bucket.logging.id
  target_prefix = "log/"
}
```

Using `tflocal` to `tflocal apply` the resources to localstack running in docker-compose works as expected but `tflocal destroy` will become stuck at 
```
aws_s3_bucket_logging.bucket: Destroying... [id=main]
aws_s3_bucket_logging.bucket: Still destroying... [id=main, 10s elapsed]
```

when reviewing the localstack output the following error is observed repeatedly

```
localstack_main | 2023-08-03T00:01:55.897  INFO --- [   asgi_gw_2] localstack.request.aws     : AWS s3.PutBucketLogging => 500 (InternalError)
localstack_main | 2023-08-03T00:01:55.899  INFO --- [   asgi_gw_1] localstack.request.http    : PUT / => 500
localstack_main | 2023-08-03T00:01:55.949 ERROR --- [   asgi_gw_2] l.aws.handlers.logging     : exception during call chain: 'NoneType' object has no attribute 'get'
```

### Expected Behavior

`tflocal destroy` to destroy the `aws_s3_bucket_logging` logging resource.  Using terraform instead of tflocal with the same terraform configuration succeeds during apply and destroy

### How are you starting LocalStack?

With a docker-compose file

### Steps To Reproduce

1. Create a minimal terraform module with a `main.tf` that includes the terraform code above
2. from the terraform module execute `tflocal init`
3. from the terraform module execute `tflocal apply`
4. observe the resources are created in localstack
5. from the terraform module execute `tflocal destroy`
6. observe the 500 error in the localstack logs and the terraform output is stuck on "Still destroying..."


### Environment

```markdown
- OS: macOS 13.4.1
- LocalStack: latest
```


### Anything else?

_No response_
Params={
                "Bucket": s3_bucket,
                "Key": _key,
                "RequestPayer": "requester",
            },
            ExpiresIn=10,
        )
        # add 
        parsed = urlparse(presigned_url)
        query_params = parse_qs(parsed.query)
        # auth 
        new_query_params = {"x-amz-request-payer": ["non-valid"]}
        for k, v in query_params.items():
            new_query_params[k] = v[0]
        new_query_params = urlencode(new_query_params, quote_via=quote, safe=" ")
        new_url = urlunsplit(
            SplitResult(  # noqa
                parsed.scheme, parsed.netloc, parsed.path, new_query_params, parsed.fragment
            )
        )
        response = .put(
            new_url,
            data="test_data",
            headers={"x-amz-request-payer": "requester"},
        )
        exception = xmltodict.parse(response.content) if response.content else {}
        exception["StatusCode"] = response.status_code
        snapshot.match("double-header-query-string", exception)
        # test 
        response = .put(