### Is there an existing issue for this?

- [X] I have searched the existing issues

### Current Behavior

If we send SES via Raw Data, `Destination` is empty, it returns `[]`. e.g.:

```
Destination: [],
```

If we send SES via non-Raw Data,  it contains values, it returns a json object:
```
Destination: {
  "ToAddresses": [
    "Address1", "Address2"
  ]
}
```

### Expected Behavior

To have a consistent schema

### How are you starting LocalStack?

With a `docker run` command

### Steps To Reproduce

1. Send a SES Message using Raw Data 
2. Send SES Message using non-Raw Data Fields.

Access <localstack>/_localstack/ses

### Environment

```markdown
- OS: MacOS
- LocalStack: 1.1.0
```


### Anything else?

_No response_
LOGGER = logging.getLogger(__name__)
EMAILS: Dict[MessageId, Dict[str, Any]] = {}
EMAILS_ENDPOINT = "/ses"
_EMAILS_ENDPOINT_REGISTERED = False
def save_for_retrospection(id: str, region: str, **kwargs: Dict[str, Any]):
    """Save a message for retrospection.
    The email is saved to filesystem and is also made accessible via a service endpoint.
    kwargs should consist of following keys related to the email:
    - Body
    - Destinations
    - RawData
    - Source
    - Subject
    - Template
    - TemplateData
    """
    ses_dir = os.path.join(config.dirs.data or config.dirs.tmp, "ses")
    mkdir(ses_dir)
    path = os.path.join(ses_dir, id + ".json")
    email = {"Id": id, "Timestamp": timestamp(), "Region": region, **kwargs}
    EMAILS[id] = email
    def _serialize(obj):
        """JSON serializer for timestamps."""
        if isinstance(obj, (datetime, date, time)):
            return obj.isoformat()
        return obj.__dict__
    with open(path, "w") as f:
        f.write(json.dumps(email, default=_serialize))
    LOGGER.debug("Email saved at: %s", path)
def recipients_from_destination(destination: Destination) -> List[str]: