negative logic: ( a & b) <=> (!a | !b)
you want to select
WHERE a OR (b AND NOT (c AND d))
which would be equiv. to
WHERE a OR (b AND (NOT c OR NOT d))
so either:
(@IncludeUnavailableBookings = 'Y') OR
(@IncludeUnavailableBookings = 'N' AND NOT (A.Col1 = 'X' AND A.Col2 = '-99'))
or:
(@IncludeUnavailableBookings = 'Y') OR
(@IncludeUnavailableBookings = 'N' AND (A.Col1 <> 'X' OR A.Col2 <> '-99'))