Just as a final note, this application works now. The essential code lines are:
DAQmxCreateTask("DAQClockFrequency", &taskOut);
DAQmxCreateCIFreqChan(taskOut, "DAQBoard/ctr0", // PFI8 is default Ctr0 Source
"Frequency", 1000000, 3000000, DAQmx_Val_Hz, DAQmx_Val_Rising,
DAQmx_Val_HighFreq2Ctr, 0.001, 4, "");
// Layout error on circuit board, grounding PFI8. Reroute around error. The alternate function,
// DAQmxConnectTerms ("/DAQBoard/PFI15", "/DAQBoard/Ctr0Source", etc.
// does not seem to work here.
DAQmxSetCIFreqTerm(taskOut,"", "/DAQBoard/PFI15"); // the initial '/' was required
DAQmxCfgImplicitTiming(taskOut, DAQmx_Val_FiniteSamps, NUM_SAMPLES);
The measurement task is started and samples taken in a separate function call. The only issue here is that the initial sample is incorrect. The value of NUM_SAMPLES is 200, so I just set the Sample zero value to equal the Sample one value.