<!-- Love localstack? Please consider supporting our collective:
👉  https://opencollective.com/localstack/donate -->

# Type of request: This is a ...

[ x ] bug report
[ ] feature request

# Detailed description

When I try to list stacks and filter the stack status, it lists all the stacks rather than filter them out.

I saw someone had this issue before and was meant to be fixed, but doesnt seem like its fixed:
- https://github.com/localstack/localstack/issues/2698

## Expected behavior

Stacks should be filtered


## Actual behavior

All stacks are returned

# Steps to reproduce

Run latest docker version of localstack.
Create new stack
Try to run something like:
aws --endpoint-url=http://localhost:4566 cloudformation list-stacks --stack-status-filter DELETE_FAILED

It will return all stacks when it should return an empty list

## Command used to start LocalStack
docker run --network host -d -e DEFAULT_REGION="eu-west-1" localstack/localstack:latest

## Client code (AWS SDK code snippet, or sequence of "awslocal" commands)
aws --endpoint-url=http://localhost:4566 cloudformation list-stacks --stack-status-filter DELETE_FAILED

Using boto3, the same thing happens:
response = self.__cloudformation_client.list_stacks(StackStatusFilter=['CREATE_FAILED'])

...

stack_name = req_params.get('StackName')
    template_deployer.prepare_template_body(req_params)
    template = template_preparer.parse_template(req_params.pop('TemplateBody'))
    template['StackName'] = stack_name
    template['ChangeSetName'] = req_params.get('ChangeSetName')
    stack = existing = find_stack(stack_name)
    if not existing:
        
        state = CloudFormationRegion.get()
        empty_stack_template = dict(template)
        empty_stack_template['Resources'] = {}
        req_params_copy = clone_stack_params(req_params)
        stack = Stack(req_params_copy, empty_stack_template)
        state.stacks[stack.stack_id] = stack
        stack.set_stack_status('CREATE_COMPLETE')
    change_set = StackChangeSet(req_params, template)
    deployer = template_deployer.TemplateDeployer(stack)
    deployer.construct_changes(stack, change_set, change_set_id=change_set.change_set_id, append_to_changeset=True)
    stack.change_sets.append(change_set)
    change_set.metadata['Status'] = 'CREATE_COMPLETE'
    change_set.metadata['ExecutionStatus'] = 'AVAILABLE'
    change_set.metadata['StatusReason'] = 'Changeset created'
    return {'StackId': change_set.stack_id, 'Id': change_set.change_set_id}
def execute_change_set(req_params):