Cortar um CAShapeLayer recuperando o caminho externo

Eu estou tentando cortar uma camada com outro, mas, em vez de criar uma máscara (B) e cortar a camada (A) obtendo uma camada cortada A com a forma de B, eu quero obter uma camada com a forma A e um ' buraco 'criado pelo corte com a camada B.

*************               ***Layer A***
*  Layer A  *               *************
*   *****   *               ****    *****
*   * B *   *      ->       ****    ***** Layer A without shape B
*   *****   *               ****    *****
*           *               *************
*************               *************

Como posso obter a camada recortada A?

questionAnswers(2)

yourAnswerToTheQuestion