Drivers in general are changing how ReadPreference is used with the generic RunCommand helper method. In particular:
1. RunCommand should default to Primary (not the ReadPreference in the database settings)
2. RunCommand should have an overload allowing the user to specify a ReadPreference if desired
This is slightly backward compatible in the sense that commands that might have been sent to a secondary before will now be sent to the primary (unless you change your code to explicitly specify a ReadPreference when calling RunCommand).