In this operation the argument and the tool both have a common edge (Attachment: Highlighted in blue) which affects the boolean cut operation.
When we rotate or offset the shape to avoid the common edge boolean cut operation works as intended.
Is there a solution to get the boolean cut done without changing the original shapes?
"Common" Edge is probably not common purely, but just the edge that lay on the cutting area. That is more interesting. Common is rare case (common = they are share the same pointer). So, the current problem have a high impact. Please report a bug.