NDIS Intermmediate Driver

hi all,
I have a Ndis intermediate driver.As i was going through DDK i found out
that whenever i want to make a call to NdisMXXX function i should first
call NdisIMSwitchtominiport and after making the call I should call
NdisIMrevetBack.I also found that

1> At present my driver does not make these calls but is working.
2> I am able to get some blue screens some times but those are once in a
thousand.

I know that i should put these functions in my driver but i am surprised
how could my driver work without calls to these function.Are these
functions necessary to call or are optional.What is the role played by
these functions in the stability and performance of a driver.

Any information or pointers to the information is appriciated.
Thanks.
Ajitabh