Bug: Curtain does not open close reliably (OpenAPI)
### Describe The Bug

When setting the curtain to fully open/closed in Home app, they do not always respond

### To Reproduce

Set up curtains with Open API, and open/close them with Home app

### Expected behavior

The curtains open/close every time.

### Relevant log output

```shell
There are several log files so I will attach them below. Here are some of my observations:

When the curtains fail to close, I often see that their current position is already at 0 (despite that they are actually fully open therefore should be 100). I see the message:

[DEBUG] Curtain: Curtain No OpenAPI Changes, CurrentPosition & TargetPosition Are the Same.  CurrentPosition: 0, TargetPosition  0

What appears to me is that the plugin thinks the curtains are already closed so did not actually send the close command to SwitchBot. Maybe there is an issue with getting the correct CurrentPosition?

As a workaround, I set position to "1% open" when I intend to fully close the curtains, and that improved the reliability, but left a 6% opening.

There is also another error scenario that I can't quite wrap my head around, and happens both when closing and opening. I have attached logs with "unknown error" in the title.
```


### Config for homebridge-switchbot

```shell
{
    "name": "SwitchBot",
    "credentials": {
        "openToken": "REDACTED",
        "notice": "Keep your token a secret!"
    },
    "options": {
        "devices": [
            {
                "deviceId": "REDACTED",
                "configDeviceName": "Left Curtain",
                "configDeviceType": "Curtain",
                "curtain": {
                    "set_min": 5,
                    "set_max": 95,
                    "updateRate": 1,
                    "hide_lightsensor": true
                },
                "refreshRate": 300
            },
            {
                "deviceId": "REDACTED",
                "configDeviceName": "Right Curtain",
                "configDeviceType": "Curtain",
                "curtain": {
                    "set_min": 5,
                    "set_max": 95,
                    "updateRate": 1,
                    "hide_lightsensor": true
                },
                "refreshRate": 300
            }
        ],
        "refreshRate": 300,
        "pushRate": 1,
        "logging": "debug"
    },
    "platform": "SwitchBot"
}
```


### Screenshots

[failed to close (left curtain) (unknown error).txt](https://github.com/OpenWonderLabs/homebridge-switchbot/files/9184395/failed.to.close.left.curtain.unknown.error.txt)
[failed to close (same current and target position).txt](https://github.com/OpenWonderLabs/homebridge-switchbot/files/9184396/failed.to.close.same.current.and.target.position.txt)
[failed to open (unknown error).txt](https://github.com/OpenWonderLabs/homebridge-switchbot/files/9184397/failed.to.open.unknown.error.txt)
[successfully close.txt](https://github.com/OpenWonderLabs/homebridge-switchbot/files/9184398/successfully.close.txt)
[successfully open.txt](https://github.com/OpenWonderLabs/homebridge-switchbot/files/9184399/successfully.open.txt)


### Device & Model

Two separate SwitchBot Curtain Rod 2's operated at the same time

### Node.js Version

v16.16.0

### NPM Version

v8.11.0

### Homebridge Version

v1.5.0

### Homebridge Switchbot Plugin Version

v1.14.1

### Homebridge Config UI X Plugin Version

v4.50.0

### Operating System

macOS