### Is there an existing issue for this?

- [X] I have searched the existing issues

### Current Behavior

When attempting to provision a FIFO SNS topic in LocalStack via CDK using `cdklocal`, e.g.:

```typescript
const topic = new sns.Topic(this, 'FIFOTopic', {
  displayName: 'topic.fifo',
  fifo: true,
  contentBasedDeduplication: true,
});
```

The resulting topic created in LocalStack is not FIFO:

![Screenshot 2023-11-27 at 12 26 44 PM](https://github.com/localstack/localstack/assets/77160631/fe0079be-1197-4a8b-8405-8014f3d633f1)

This doesn't appear to be an issue with `cdklocal`, because the template output does appear to have the correct properties:

```json
{
 "Resources": {
  "FIFOTopic5C947601": {
   "Type": "AWS::SNS::Topic",
   "Properties": {
    "ContentBasedDeduplication": true,
    "DisplayName": "topic.fifo",
    "FifoTopic": true,
    "TopicName": "SNSStack-FIFOTopic-99AA2860.fifo"
   },
   ...
   
 }
```


### Expected Behavior

A FIFO SNS Topic would be provisioned when setting `fifo: true` on the CDK construct.

### How are you starting LocalStack?

With the `localstack` script

### Steps To Reproduce

I created this git repository to provide an example duplicating the issue: https://github.com/tbellerose-godaddy/ls-fifo-sns-cdk-bug

#### How are you starting localstack (e.g., `bin/localstack` command, arguments, or `docker-compose.yml`)

    localstack start -d

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

    
    cdklocal bootstrap
    cdklocal deploy '*'

### Environment

```markdown
- OS: macOS Ventura 13.5.2
- LocalStack: 2.3.2
```


### Anything else?

Creating a FIFO SNS Topic via the `awslocal-cli` works as expected. This is only an issue when creating via CDK.
ContentBasedDeduplication: Optional[bool]
    DataProtectionPolicy: Optional[dict]
    DisplayName: Optional[str]
    FifoTopic: Optional[bool]
    KmsMasterKeyId: Optional[str]
    SignatureVersion: Optional[str]
    Subscription: Optional[list[Subscription]]
    Tags: Optional[list[Tag]]
    TopicArn: Optional[str]
    TopicName: Optional[str]
    TracingConfig: Optional[str]
class Subscription(TypedDict):
    Endpoint: Optional[str]
    Protocol: Optional[str]
class Tag(TypedDict):
    Key: Optional[str]
    Value: Optional[str]
REPEATED_INVOCATION = "repeated_invocation"
class SNSTopicProvider(ResourceProvider[SNSTopicProperties]):
    TYPE = "AWS::SNS::Topic"  
    SCHEMA = util.get_schema_path(Path(__file__))  
    def create(