Repository: flutter
Issue: [WEB] Canvaskit: PathOperation.difference doesn't work properly when one geometry contains the other one
Labels: engine,platform-web,e: web_canvaskit,has reproducible steps,P2,found in release: 3.7,found in release: 3.10,e: web_skwasm,team-web,triaged-web

### Is there an existing issue for this?

- [X] I have searched the [existing issues](https://github.com/flutter/flutter/issues)
- [X] I have read the [guide to filing a bug](https://flutter.dev/docs/resources/bug-reports)

### Steps to reproduce

Run the example code.

You have to use `--web-renderer canvaskit` otherwise #44572 will throw an error.

You can observe when modify second rect from `Rect.fromLTRB(90, 90, 110, 149)` to  `Rect.fromLTRB(90, 90, 110, 150)` the `PathOperation.difference` operation works properly.

### Expected results

It should look like similar to Impeller / Skia renderer

![image](https://user-images.githubusercontent.com/8436039/231492005-25e3c723-5d60-449d-bd14-065cdd2a20d1.png)


### Actual results

![image](https://user-images.githubusercontent.com/8436039/231492139-ca3d6ae8-1cd0-4612-b764-f3abbb72df89.png)


### Code sample

```dart
import 'package:flutter/material.dart';

void main() {
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Rect Difference Example',
      home: Scaffold(
        body: CustomPaint(
          painter: RectDifferencePainter(),
        ),
      ),
    );
  }
}

class RectDifferencePainter extends CustomPainter {
  @override
  void paint(Canvas canvas, Size size) {
    canvas.drawPath(
      Path.combine(
        PathOperation.difference,
        Path()..addRect(const Rect.fromLTRB(50, 50, 150, 150)),
        Path()..addRect(const Rect.fromLTRB(90, 90, 110, 149)),
      ),
      Paint()..color = Colors.blue,
    );
  }

  @override
  bool shouldRepaint(RectDifferencePainter oldDelegate) => false;
}
```

### Screenshots or Video

_No response_

### Logs

_No response_

### Flutter Doctor output

<details><summary>Doctor output</summary>

```console
[√] Flutter (Channel stable, 3.7.8, on Microsoft Windows [Version 10.0.19045.2728], locale hu-HU)
    • Flutter version 3.7.8 on channel stable at C:\flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 90c64ed42b (3 weeks ago), 2023-03-21 11:27:08 -0500
    • Engine revision 9aa7816315
    • Dart version 2.19.5
    • DevTools version 2.20.1

[√] Windows Version (Installed version of Windows is version 10 or higher)

[√] Android toolchain - develop for Android devices (Android SDK version 33.0.0)
    • Android SDK at C:\Users\maRci002\AppData\Local\Android\sdk
    • Platform android-33, build-tools 33.0.0
    • Java binary at: C:\Program Files\Android\Android Studio\jbr\bin\java
    • Java version OpenJDK Runtime Environment (build 11.0.15+0-b2043.56-9505619)
    • All Android licenses accepted.

[√] Chrome - develop for the web
    • Chrome at C:\Program Files\Google\Chrome\Application\chrome.exe

[√] Visual Studio - develop for Windows (Visual Studio Community 2022 17.4.5)
    • Visual Studio at C:\Program Files\Microsoft Visual Studio\2022\Community
    • Visual Studio Community 2022 version 17.4.33403.182
    • Windows 10 SDK version 10.0.20348.0

[√] Android Studio (version 2022.1)
    • Android Studio at C:\Program Files\Android\Android Studio
    • Flutter plugin can be installed from:
       https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
       https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.15+0-b2043.56-9505619)

[√] VS Code (version 1.77.1)
    • VS Code at C:\Users\maRci002\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.44.0

[√] Connected device (4 available)
    • sdk gphone64 x86 64 (mobile) • emulator-5554 • android-x64    • Android 13 (API 33) (emulator)
    • Windows (desktop)            • windows       • windows-x64    • Microsoft Windows [Version 10.0.19045.2728]
    • Chrome (web)                 • chrome        • web-javascript • Google Chrome 112.0.5615.50
    • Edge (web)                   • edge          • web-javascript • Microsoft Edge 112.0.1722.34

[√] HTTP Host Availability
    • All required HTTP hosts are available

• No issues found!
```

</details>