The nodes implemented in the parser don't represent :is(<selector_list>) and :where(<selector_list>) but <selector>:is(<selector_list>) and <selector>:where(<selector_list>).
The computation of the specificity loses the specificity of <selector>.
Note: I discovered that mistake while reviewing symfony/symfony#48803 as the symfony/css-selector PHP package is mostly a PHP port of this package.