Ensure _cancel is always called with the correct context