Вы используете libnet_do_checksum (), когда хотите вручную вычислить контрольную сумму, чтобы проверить ее, например, перед отправкой.
Вы уверены, что пакет, содержащий данные HTTP, содержит ошибку контрольной суммы? Может случиться так, что ОС использует разгрузку контрольной суммы. Wireshark сообщит о неверной контрольной сумме на исходном компьютере, но сетевая карта вычислит ее перед отправкой пакета по сети.