         if r_alpha > 0 {
             let _destination = self._color
             let _source = blendMode.rawValue.combine(source._color, _destination, d_alpha)
-            return Self(color: compositingMode.mix(s_alpha / r_alpha * _source, s_alpha, d_alpha / r_alpha * _destination, d_alpha), opacity: r_alpha)
+            return Self(color: compositingMode.rawValue.mix(s_alpha / r_alpha * _source, s_alpha, d_alpha / r_alpha * _destination, d_alpha), opacity: r_alpha)
         } else {
             return Self()
         }

        if r_alpha > 0 {
            let _destination = self.color
            let _source = blendMode.rawValue.combine(source.color, _destination, d_alpha)
            return Self(color: compositingMode.mix(s_alpha / r_alpha * _source, s_alpha, d_alpha / r_alpha * _destination, d_alpha), opacity: r_alpha)
        } else {
            return Self()
        }
    }
}

extension ColorPixel where Self: _FloatComponentPixel, ColorComponents: DoggieGraphics.ColorComponents {
    
    @inlinable
    @inline(__always)

    public static let xor = ColorCompositingMode(rawValue: XorCompositingKernel.self)
}

extension ColorPixel {
    
    @inlinable
