Fix licence tool include/excludes for Windows (#8843)

If the YAML file contains an exclusion using a forward slash then this condition would fail to match when running on Windows. This change uses `path.isWithin()` which handles the mismatched slashes automatically.

This fixes some test failures when running the licence tests on Windows.
diff --git a/tool/lib/license_utils.dart b/tool/lib/license_utils.dart
index c171d13..652e90e 100644
--- a/tool/lib/license_utils.dart
+++ b/tool/lib/license_utils.dart
@@ -138,14 +138,16 @@
   bool shouldExclude(File file) {
     var included = false;
     for (final includePath in includePaths) {
-      if (file.path.startsWith(includePath)) {
+      if (p.equals(includePath, file.path) ||
+          p.isWithin(includePath, file.path)) {
         included = true;
         break;
       }
     }
     var excluded = false;
     for (final excludePath in excludePaths) {
-      if (file.path.startsWith(excludePath)) {
+      if (p.equals(excludePath, file.path) ||
+          p.isWithin(excludePath, file.path)) {
         excluded = true;
         break;
       }