When you say BASS_RecordGetDeviceCount returns the wrong count, do you mean it doesn't match the number of devices returned by BASS_RecordGetDeviceInfos? Or is it that there seem to be playback devices included? If the latter, those are "loopback" recording devices, which can be identified by having the BASS_DEVICE_LOOPBACK flag set. If you don't want loopback devices to be included, you can disable them via the BASS_CONFIG_REC_LOOPBACK option:
BASS.SetConfig(BASSConfig.BASS_CONFIG_REC_LOOPBACK, 0); // disable loopback devices
Note that needs to be done before any devices have been enumerated/initialized.