Efficiently Filter Large Set With Disjunctions
If this particular work load is the majority of queries against the table you might consider:

ALTER TABLE Ticket ADD CONSTRAINT PK_Ticket PRIMARY KEY NONCLUSTERED (TicketId);

CREATE UNIQUE CLUSTERED INDEX IX_Ticket_Covering ON Ticket (
    InsertDateTime ASC
);


Considerations:


can you use datetime2 (SQL 2008+; flexible precision)
will InsertDateTime be unique within your precision
if the times are not constrained unique sql will add a hidden uniquifier column of type int. This is added to all nonclutred index so they can reference the correct clustered record 


Advantages:


Adds new rows to the end of the table 
prevent writing the optional filter columns twice (once in the clustered, and once on the index leaf for the include)
majority of you time will still be on a cluster index seek with more or less filers. 
then add other nonclustered index for most popular column pairs