bpo-41907: [Enum] fix format() behavior for IntFlag (GH-22497)

diff --git a/Lib/enum.py b/Lib/enum.py
index d670ad7..484db2c 100644
--- a/Lib/enum.py
+++ b/Lib/enum.py
@@ -658,7 +658,7 @@ def __format__(self, format_spec):
         # the value
 
         # pure Enum branch, or branch with __str__ explicitly overridden
-        str_overridden = type(self).__str__ != Enum.__str__
+        str_overridden = type(self).__str__ not in (Enum.__str__, Flag.__str__)
         if self._member_type_ is object or str_overridden:
             cls = str
             val = str(self)