Partitions of star-free languages and questions on the proof of the Splitting Lemma by Diekert/Gastin
For the set $\{K_i \mid 1 \leq i \leq n\}$ to form a partition of $B^*$, it is necessary, that all $K_i$ are pairwise disjoint and every element in $B^*$ is cointained in some $K_i$. You already showed that they are disjoint, as is is possible to split two overlapping $K_i$ into three disjoint ones by using the parts that don't overlap and the intersection instead. The second condition, that everything is contained, is achieved by adding $(B^* \setminus \bigcup_i K_i)$ to the set $\{K_i \mid 1 \leq i \leq n\}$ so $n$ is incresed by one and still is finite. And this $(B^* \setminus \bigcup_i K_i)$ contains everything that was not previously contained.

As $\{K_i \mid 1 \leq i \leq n\}$ forms a partition, everything in $B^*$ is contained in some $K_i$ and is, therefore, also contained in the complement of another one, which means, it doesn't change anything to use the complement of the $K_i$s.