1) Combo46 as a control name makes no sense. I'd recommend giving your controls meaningful names so that you can understand clearly what you are using them for when coding.
2) You are setting the filter in combo46
Me.Filter = "YrSeason = Forms![AIM_OfferInfo]![Combo46]"
to NOT include your original filter. I am guessing that YrSeason should be a subset of Book and that more than one Book can have the same YrSeason? If so, you would want one SUB to take care of your filter that you can call from either combo. It would look something like
DIM asFilter AS STRING
asFilter = ""
IF nz(Forms![AIM_OfferInfo]![Combo44],"") <> "" THEN
asFilter = "Book = '" & Forms![AIM_OfferInfo]![Combo44] & "'"
IF nz( Forms![AIM_OfferInfo]![Combo46],"" ) <> ""
IF asFilter <> "" THEN asFilter = asFilter & " AND "
asFilter = asFilter & YrSeason = "' & Forms![AIM_OfferInfo]![Combo46] & "'"
msgbox "Filter is " & asFilter 'Use to verify you are passing exactly what you want, remove after you finish debuggin.
Me.Filter = asFilter
Me.FilterOn = True
You would then simply call TCO_Filter for each of your combo's.
Were I you, I'd try this out to see if it will work for you. I don't have your app so I can't actually try this.