### Is there an existing issue for this?

- [X] I have searched the existing issues

### Current Behavior

I have my code here, its working perfect first time i run cdklocal deploy, if i run it again and remove eg. s3 bucket or my codeartifact domain its will sending a lots of error in my docker container.

```python
from constructs import Construct
from aws_cdk import (
    App, Stack,
    aws_codeartifact as codeartifact,
    aws_s3 as s3,
)


class LocalTestStack(Stack):
    def __init__(self, scope: Construct, id: str, **kwargs):
        super().__init__(scope, id, **kwargs)

        cfn_domain = codeartifact.CfnDomain(
            self,
            "TestCodeArtifactDomain",
            domain_name="DemoDomain"
        )

        s3_bucket_test = s3.Bucket(self, 'TestBucket')
        s3_bucket_test.grant_public_access()

        s3_bucket_test2 = s3.Bucket(self, 'HestBucket')
        s3_bucket_test2.grant_public_access()


app = App()
LocalTestStack(app, "LocalTestStack")
app.synth()
```

my log look like this, look like some localhost proxy post request there are failed.

```
2022-05-04T12:56:44.202:WARNING:localstack.utils.server.http2_server: Error in proxy handler for request POST http://localhost:4566/: 'ParameterValue' Traceback (most recent call last):

  File "/opt/code/localstack/localstack/utils/server/http2_server.py", line 185, in index

    result = await run_sync(handler, request, data)

  File "/opt/code/localstack/localstack/utils/asyncio.py", line 85, in run_sync

    return await loop.run_in_executor(thread_pool, copy_context().run, func_wrapped)

  File "/opt/code/localstack/localstack/utils/threads.py", line 39, in run

    result = self.func(self.params, **kwargs)

  File "/opt/code/localstack/localstack/utils/asyncio.py", line 30, in _run

    return fn(*args, **kwargs)

  File "/opt/code/localstack/localstack/services/generic_proxy.py", line 973, in handler

    return modify_and_forward(

  File "/opt/code/localstack/localstack/services/generic_proxy.py", line 514, in wrapper

    value = func(*args, **kwargs)

  File "/opt/code/localstack/localstack/services/generic_proxy.py", line 594, in modify_and_forward

    listener_result = listener.forward_request(

  File "/opt/code/localstack/.venv/lib/python3.10/site-packages/localstack_ext/services/edge.py.enc", line 132, in forward_request

  File "/opt/code/localstack/localstack/services/edge.py", line 170, in forward_request

    result = do_forward_request(api, method, path, data, headers, port=port)

  File "/opt/code/localstack/localstack/utils/patch.py", line 38, in proxy

    return new(target, *args, **kwargs)

  File "/opt/code/localstack/.venv/lib/python3.10/site-packages/localstack_ext/services/edge.py.enc", line 128, in do_forward_request

  File "/opt/code/localstack/localstack/services/edge.py", line 225, in do_forward_request

    result = do_forward_request_inmem(api, method, path, data, headers, port=port)

  File "/opt/code/localstack/localstack/services/edge.py", line 249, in do_forward_request_inmem

    response = modify_and_forward(

  File "/opt/code/localstack/localstack/services/generic_proxy.py", line 514, in wrapper

    value = func(*args, **kwargs)

  File "/opt/code/localstack/localstack/services/generic_proxy.py", line 594, in modify_and_forward

    listener_result = listener.forward_request(

  File "/opt/code/localstack/localstack/http/adapters.py", line 51, in forward_request

    response = self.request(request)

  File "/opt/code/localstack/localstack/aws/proxy.py", line 42, in request

    response = self.skeleton.invoke(context)

  File "/opt/code/localstack/localstack/aws/skeleton.py", line 153, in invoke

    return self.dispatch_request(context, instance)

  File "/opt/code/localstack/localstack/aws/skeleton.py", line 165, in dispatch_request

    result = handler(context, instance) or {}

  File "/opt/code/localstack/localstack/aws/skeleton.py", line 117, in __call__

    return self.fn(*args, **kwargs)

  File "/opt/code/localstack/localstack/aws/api/core.py", line 95, in operation_marker

    return fn(*args, **kwargs)

  File "/opt/code/localstack/localstack/services/cloudformation/provider.py", line 951, in execute_change_set

    deployer.apply_change_set(change_set)

  File "/opt/code/localstack/localstack/utils/cloudformation/template_deployer.py", line 1219, in apply_change_set

    self.apply_changes(

  File "/opt/code/localstack/localstack/utils/cloudformation/template_deployer.py", line 1490, in apply_changes

    self.init_resource_status(old_resources, action="UPDATE")

  File "/opt/code/localstack/localstack/utils/cloudformation/template_deployer.py", line 1338, in init_resource_status

    stack.set_resource_status(resource_id, "%s_IN_PROGRESS" % action)

  File "/opt/code/localstack/localstack/services/cloudformation/provider.py", line 183, in set_resource_status

    self._set_resource_status_details(resource_id, physical_res_id=physical_res_id)

  File "/opt/code/localstack/localstack/services/cloudformation/provider.py", line 192, in _set_resource_status_details

    resource = self.resources.get(resource_id)

  File "/opt/code/localstack/localstack/services/cloudformation/provider.py", line 255, in resources

    add_params(defaults=False)

  File "/opt/code/localstack/localstack/services/cloudformation/provider.py", line 250, in add_params

    else param["ParameterValue"]

KeyError: 'ParameterValue'
```

### Expected Behavior

Expect to keep my stack up to date, its very important when you need to test a new configuration from time to time, and not a "fresh" run.

### How are you starting LocalStack?

With the `localstack` script

### Steps To Reproduce

Steps are wirte in the start.

### Environment

```markdown
- OS: macOS 12.3.1
- LocalStack: 0.14.2.7
- cdklocal: 2.22.0 (build 1db4b16)
- Docker Desktop: 4.7.1
- Docker Engine: 20.10.14
```


### Anything else?

_No response_
resource_props = resource.get("Properties", {})
    if resource_type == "Parameter":
        result = None
        param_value = resource_props.get(
            "Value",
            resource.get("Value", resource_props.get("Properties", {}).get("Value")),
        )
        if is_ref_attr_or_arn:
            result = param_value
        elif isinstance(param_value, dict):
            result = param_value.get(attribute)
        if result is not None:
            return result
        return ""
    elif resource_type == "Lambda::Function":
        func_configs = resource_state.get("Configuration") or {}
        if is_ref_attr_or_arn:
            func_arn = func_configs.get("FunctionArn")
            if func_arn:
                return resolve_refs_recursively(stack, func_arn)
            func_name = resolve_refs_recursively(stack, func_configs.get("FunctionName"))
            return aws_stack.lambda_function_arn(func_name)
        else:
            return func_configs.get(attribute)
    elif resource_type == "Lambda::Version":
        if resource_state.get("Version"):
            return "%s:%s" % (
                resource_state.get("FunctionArn"),
                resource_state.get("Version").split(":")[-1],